Дипломная работа: Программно методический комплекс для обучения процессу создания компиляторов

Синтаксис языка программирования - это правила составления предложений языка из отдельных слов. Такими предложениями являются операции, операторы, определения функций и переменных. Особенностью синтаксиса является принцип вложенности (рекурсивность) правил построения предложений. Это значит, что элемент синтаксиса языка в своем определении прямо или косвенно в одной из его частей содержит сам себя. Например, в определении оператора цикла телом цикла является оператор, частным случаем которого является все тот же оператор цикла.

Синтаксический анализ (грамматический разбор) – формирует синтаксическую единицу – выражение, инструкцию, вызов подпрограммы, декларацию, которые далее обрабатываются семантическим анализатором. Пример структуры: FOR <выражение> TOintDO <body>.

Синтаксический разбор – процесс получения дерева синтаксического разбора на основе заданной грамматики.

Сканер (лексический анализатор) – программа распознавания лексем.

Спецификатор – порядковый номер в таблице, куда занесена лексема.

Терминальный символ – конечный неделимый элемент конструкции языка, является зарезервированным словом (например READ, (, +).

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


Содержание

Введение................................................................................................... 19

1 Анализ предметной области................................................................ 20

1.1 Компиляторы........................................................................... 20

1.2 Логическая структура компилятора..................................... 21

1.3 Лексический анализ. Сканер..................................................... 24

1.4 Синтаксический и семантический анализ.............................. 28

1.5 Грамматики............................................................................. 31

1.6 Формирование промежуточного кода................................... 34

Метод четверок..................................................................... 36

1.7 Обоснование создания учебного комплекса............................. 37

1.8 Обзор существующих разработок.......................................... 38

1.9 Обоснование разработки........................................................ 39

2 Создание учебной разработки............................................................. 42

2.1 Краткое описание учебного компилятора............................. 42

2.2 Описание учебного языка......................................................... 43

2.3 Лексический анализатор LEXAN............................................. 46

2.3.1 Таблица терминальных символов.............................. 47

2.3.2 Таблица символических имен..................................... 48

2.3.3 Таблица литералов...................................................... 49

2.3.4 Работа сканера............................................................. 50

2.3.5 Структура листинга..................................................... 50

К-во Просмотров: 348
Бесплатно скачать Дипломная работа: Программно методический комплекс для обучения процессу создания компиляторов