Скачать 263.16 Kb.
|
Санкт – Петербургский университет информационных технологий, механики и оптики Кафедра иностранных языков “Анализ, представление и трансформация программ” Выполнил: аспирант кафедры ИС Удалов А. С. Научный руководитель: д. т. н., проф. Бухановский А. В. Санкт – Петербург 2010 Данный обзорный реферат написан по трем статьям. Их содержание позволяет получить определенное представление о современном состоянии исследований в области анализа, представления и возможных последующих преобразований программ.Первые исследования по трансформации программ были связаны с проблемами разработки оптимизирующих компиляторов, но впоследствии выяснилось, что эти исследования и технологии, использующие их результаты, могут успешно применяться не только при разработке методов компиляции и оптимизации программ, но и во многих других областях разработки программного обеспечения. В настоящее время исследования по методам анализа и трансформации программ развиваются особенно интенсивно, на их основе разрабатываются и успешно внедряются новые прогрессивные технологии разработки и верификации программного обеспечения. И в настоящее время развитие многих современных направлений компьютерных индустрии невозможно представить без понимания методов анализа, представления и трансформации программ. Этим и обуславливается актуальность освещения этого вопроса. В используемых статьях описываются фундаментальные понятия и некоторые методы анализа и трансформации программ с учетом последних достижений в этой области и инфраструктура необходимая для организации исследований и реализации соответствующих технологий. Авторы статей, на которых базируется этот реферат, представляют ведущие университеты и компании в области информационных технологий: Стэ́нфордский университе́т (США) [1], компании Google (Research department) и Novamente LLC [2], Утрехтский университет (Голландия) [3]. Данный реферат состоит из двух основных разделов: в первом освещены фундаментальные вопросы и некоторые из методов представления программ по статьям [1-2], во втором же мы коснемся конкретных способов трансформации программ, которые освещены авторами [2, 3]. Представление программ.Как заметил автор работы [1], несмотря на то, что некоторые трансформирующие системы работают напрямую с исходным кодом программы, в основном текстовое представление не пригодно для выполнения сложных преобразований. Поэтому, именно структурные представления используются в большинстве систем преобразований программ. Промежуточное представление исходного кода программы предназначается в наше время, прежде всего, для удобства генерации кода и проведения различных трансформаций. В своей работе автор разделяет промежуточные представления разных уровней на категории. Разделение происходит по принципу близости этого представления к языку программирования высокого уровня с одной стороны и к машинному коду с другой. Для более ясного понимания приводится простой пример представления двумерного массива (Рис.1) Рис. 1. Примеры различных категорий промежуточные представления. Не углубляясь в детали реализации данных представлений, автор производит анализ этих категорий, определяет их принципиальные отличия, основные применения и дает нам краткую характеристику каждой. Высокоуровневые представления стремятся более близко отразить исходный код программы, к примеру, сохраняют информацию о циклах и условных операторах. Средне уровневые представления часто проектируются так, чтобы быть независимыми и от исходного кода и от целевой машины. Низкоуровневые представления стремятся очень близко отразить тонкости целевой машины и в итоге такие представления являются машино-зависимыми. Иногда компилятор или трансформирующая система преобразует программу в высокоуровневое представление, выполняет какие-то (оптимизирующие) преобразования, транслирует результат в более низкоуровневое представление, оптимизирует снова и т.д. до окончательной генерации ассемблерного кода. |
Программа построена согласно архитектуре mvc (Model-View-Controller)... В этом разделе описывается разработка программной системы – от проектирования структурных, функциональных и принципиальных схем и... |
Пользователь пользуется интерфейсом готовых программ и операционной системы Операцио́нная систе́ма, ос (англ operating system) — базовый комплекс компьютерных программ, обеспечивающий управление аппаратными... |
||
Методические рекомендации по р азработке программ Методические рекомендации по разработке программ профессиональных модулей основных профессиональных образовательных программ по специальностям... |
Муниципальное автономное общеобразовательное учреждение коммунаровская... Цель проверки: соответствие программ положению о разработке рабочих программ учебных предметов |
||
Главы задач. В этой главе описываются предлагаемые модели и методы... «Построение тестовых программ для проверки подсистем управления памяти микропроцессоров» |
Программа: С. А. Галин, Г. С. Галина, Ф. Т. Кузбеков, Р. А. Кузбекова.... Программа составлена на основе учебных программ предметов «История Башкортостана» и «Культура Башкортостана». При этом стремилась... |
||
Программа: С. А. Галин, Г. С. Галина, Ф. Т. Кузбеков, Р. А. Кузбекова.... Программа составлена на основе учебных программ предметов «История Башкортостана» и «Культура Башкортостана». При этом стремилась... |
Программа: С. А. Галин, Г. С. Галина, Ф. Т. Кузбеков, Р. А. Кузбекова.... Программа составлена на основе учебных программ предметов «История Башкортостана» и «Культура Башкортостана». При этом стремилась... |
||
Программа: С. А. Галин, Г. С. Галина, Ф. Т. Кузбеков, Р. А. Кузбекова.... Программа составлена на основе учебных программ предметов «История Башкортостана» и «Культура Башкортостана». При этом стремилась... |
Практикум на ЭВМ среда программирования и отладка программ Рыков В. И. Среда Microsoft Visual C++ и отладка программ. Технология работы с языком С++. /Издание Башкирского ун-та. Уфа 2006.... |
Поиск на сайте Главная страница Литература Доклады Рефераты Курсовая работа Лекции |