Скачиваний:
19
Добавлен:
01.05.2014
Размер:
428.08 Кб
Скачать

Введение

Вопросы разработки, использования и реализации языков программирования тесно связаны с проблемой точного описания (определения) языка. Для определения языка требуется задать множество основных символов языка и описать его синтаксис и семантику. С точки зрения пользователя языка, описывающего на языке программирования алгоритмы решения своих задач, точное определение языка необходимо для того, чтобы он мог понимать, правильно применять и записывать конструкции этого языка. Разработчикам языковых процессоров (компиляторов, интерпретаторов) точность описания требуется для реализации языкового процессора, поскольку вид и смысл языковых конструкций должны быть в точности такими, как их задумал автор языка. Все реализации языкового процессора должны выдавать идентичные результаты для одной и той же программы.

В данном учебном пособии рассматриваются различные способы определения синтаксиса и семантики языков программирования, приводятся и анализируются наиболее часто используемые при разработке языковых процессоров формальные модели, описывающие процесс синтаксического анализа и перевода программы в промежуточный код. Рассматриваемые формальные модели позволяют точно и полно описать перевод достаточно простыми средствами и реализовать процессы синтаксического анализа программы на входном языке и ее перевода в промежуточный код одним блоком языкового процессора.

Материал учебного пособия разделен на пять разделов.

В первом разделе рассматриваются способы задания синтаксиса языка программирования.

Во втором разделе приводится описание промежуточных языков, используемых синтаксическим анализатором для представления результата перевода.

Третий раздел посвящен определению транслирующих и атрибутных транслирующих грамматик.

В четвертом разделе рассматриваются вопросы проектирования атрибутных транслирующих грамматик.

Пятый раздел посвящен методам реализации атрибутного перевода, описываемого с помощью атрибутной транслирующей грамматики.

Описания алгоритмов синтаксического анализа и перевода сопровождаются большим числом примеров для экспериментальных и грамматик с небольшим числом терминальных и нетерминальных символов правил вывода, что позволяет упростить процесс анализа рассматриваемых моделей.

Издание подобного учебного пособия представляется полезным и своевременным, поскольку учебная литература по данной тематике в настоящее время отсутствует, а в имеющейся научной литературе рассмотрение вопросов использования формальных моделей для описания семантики языков программирования ориентировано на научных работников и практически недоступно студентам.

Учебное пособие предназначено для студентов специальностей 220400 “Программное обеспечение вычислительных комплексов и систем” и 010200 “Прикладная математика”, магистров по направлениям 552800 “Информатика и вычислительная техника” и 510200 “Прикладная математика и информатика” и может быть полезно аспирантам, магистрам и студентам других специальностей, интересующихся формальными методами описания перевода и вопросами проектирования языковых процессоров

Разделы 1– 3 написаны Э. А. Опалевой, раздел 4 – В. П. Самойленко, раздел 5 – О. Н. Семеновой. Общее редактирование учебного пособия выполнено Э. А. Опалевой.

Соседние файлы в папке ФОРМАЛЬНЫЕ МЕТОДЫ ОПИСАНИЯ ПЕРЕВОДА