ВУЗ:
Составители:
3
СОДЕРЖАНИЕ:
ВВЕДЕНИЕ........................................................................................................... 4
1. СТРУКТУРА КОМПИЛЯТОРА. ТИПЫ ТРАНСЛИРУЮЩИХ
ПРОГРАММ ............................................................................................................ 7
2. ОПРЕДЕЛЕНИЕ ЯЗЫКА. СИНТАКСИС И СЕМАНТИКА ...................... 15
3. КЛАССИФИКАЦИЯ ГРАММАТИК. ИЕРАРХИЯ ХОМСКОГО............. 20
4. ПРОБЛЕМА РАЗБОРА................................................................................... 26
5. ЛЕКСИЧЕСКИЙ АНАЛИЗ ............................................................................ 31
6. КОНЕЧНЫЕ АВТОМАТЫ............................................................................. 35
7. КОНТЕКСТНО-СВОБОДНЫЕ ГРАММАТИКИ ........................................ 40
8. LL(1) - ГРАММАТИКИ.................................................................................. 45
9. ПРЕОБРАЗОВАНИЕ ГРАММАТИК В LL(1) ФОРМУ.............................. 50
10. ПОСТРОЕНИЕ СИНТАКСИЧЕСКОГО ГРАФА ..................................... 56
11. ПОСТРОЕНИЕ ПРОГРАММЫ ГРАММАТИЧЕСКОГО РАЗБОРА ДЛЯ
ЗАДАННОГО СИНТАКСИСА............................................................................ 61
12. ПОСТРОЕНИЕ ТАБЛИЧНО-УПРАВЛЯЕМОЙ ПРОГРАММЫ
ГРАММАТИЧЕСКОГО РАЗБОРА ..................................................................... 66
13. ВОСХОДЯЩИЙ СИНТАКСИЧЕСКИЙ АНАЛИЗ .................................. 71
14. РАБОТА С ТАБЛИЦЕЙ СИМВОЛОВ ...................................................... 84
15. ВОССТАНОВЛЕНИЕ ПРИ СИНТАКСИЧЕСКИХ ОШИБКАХ ............ 88
16. ПОСТФИКСНАЯ ЗАПИСЬ......................................................................... 91
17. ВНУТРЕННИЕ ФОРМЫ ........................................................................... 103
18. МЕТОДЫ ГЕНЕРИРОВАНИЯ КОДА ..................................................... 105
19. ЛИТЕРАТУРА ............................................................................................ 107
20. ЛАБОРАТОРНЫЕ РАБОТЫ..................................................................... 108
ЛАБОРАТОРНАЯ РАБОТА №1. РАЗРАБОТКА ЛЕКСИЧЕСКОГО
АНАЛИЗАТОРА .............................................................................................. 109
ЛАБОРАТОРНАЯ РАБОТА №2. РАЗРАБОТКА СИНТАКСИЧЕСКОГО
АНАЛИЗАТОРА .............................................................................................. 110
ЛАБОРАТОРНАЯ РАБОТА №3. ФОРМИРОВАНИЕ ПОСТФИКСНОЙ
ЗАПИСИ............................................................................................................ 112
ЛАБОРАТОРНАЯ РАБОТА №4. РАЗРАБОТКА ГЕНЕРАТОРА КОДА
.. 113
ПРИЛОЖЕНИЕ А. ВАРИАНТЫ ЗАДАНИЙ К ЛАБОРАТОРНЫМ
РАБОТАМ......................................................................................................... 117
ПРИЛОЖЕНИЕ Б. ТРЕБОВАНИЯ К КУРСОВОМУ ПРОЕКТУ............... 123
3 СОДЕРЖАНИЕ: ВВЕДЕНИЕ ........................................................................................................... 4 1. СТРУКТУРА КОМПИЛЯТОРА. ТИПЫ ТРАНСЛИРУЮЩИХ ПРОГРАММ ............................................................................................................ 7 2. ОПРЕДЕЛЕНИЕ ЯЗЫКА. СИНТАКСИС И СЕМАНТИКА ...................... 15 3. КЛАССИФИКАЦИЯ ГРАММАТИК. ИЕРАРХИЯ ХОМСКОГО. ............ 20 4. ПРОБЛЕМА РАЗБОРА................................................................................... 26 5. ЛЕКСИЧЕСКИЙ АНАЛИЗ ............................................................................ 31 6. КОНЕЧНЫЕ АВТОМАТЫ............................................................................. 35 7. КОНТЕКСТНО-СВОБОДНЫЕ ГРАММАТИКИ ........................................ 40 8. LL(1) - ГРАММАТИКИ .................................................................................. 45 9. ПРЕОБРАЗОВАНИЕ ГРАММАТИК В LL(1) ФОРМУ .............................. 50 10. ПОСТРОЕНИЕ СИНТАКСИЧЕСКОГО ГРАФА ..................................... 56 11. ПОСТРОЕНИЕ ПРОГРАММЫ ГРАММАТИЧЕСКОГО РАЗБОРА ДЛЯ ЗАДАННОГО СИНТАКСИСА ............................................................................ 61 12. ПОСТРОЕНИЕ ТАБЛИЧНО-УПРАВЛЯЕМОЙ ПРОГРАММЫ ГРАММАТИЧЕСКОГО РАЗБОРА ..................................................................... 66 13. ВОСХОДЯЩИЙ СИНТАКСИЧЕСКИЙ АНАЛИЗ .................................. 71 14. РАБОТА С ТАБЛИЦЕЙ СИМВОЛОВ ...................................................... 84 15. ВОССТАНОВЛЕНИЕ ПРИ СИНТАКСИЧЕСКИХ ОШИБКАХ ............ 88 16. ПОСТФИКСНАЯ ЗАПИСЬ ......................................................................... 91 17. ВНУТРЕННИЕ ФОРМЫ ........................................................................... 103 18. МЕТОДЫ ГЕНЕРИРОВАНИЯ КОДА ..................................................... 105 19. ЛИТЕРАТУРА ............................................................................................ 107 20. ЛАБОРАТОРНЫЕ РАБОТЫ..................................................................... 108 ЛАБОРАТОРНАЯ РАБОТА №1. РАЗРАБОТКА ЛЕКСИЧЕСКОГО АНАЛИЗАТОРА .............................................................................................. 109 ЛАБОРАТОРНАЯ РАБОТА №2. РАЗРАБОТКА СИНТАКСИЧЕСКОГО АНАЛИЗАТОРА .............................................................................................. 110 ЛАБОРАТОРНАЯ РАБОТА №3. ФОРМИРОВАНИЕ ПОСТФИКСНОЙ ЗАПИСИ ............................................................................................................ 112 ЛАБОРАТОРНАЯ РАБОТА №4. РАЗРАБОТКА ГЕНЕРАТОРА КОДА .. 113 ПРИЛОЖЕНИЕ А. ВАРИАНТЫ ЗАДАНИЙ К ЛАБОРАТОРНЫМ РАБОТАМ ......................................................................................................... 117 ПРИЛОЖЕНИЕ Б. ТРЕБОВАНИЯ К КУРСОВОМУ ПРОЕКТУ ............... 123