Книга: Залогова Л. А. «Разработка Паскаль-компилятора»
В книге излагается структура компилятора, основные принципы построения всех его основных блоков — лексического, синтаксического и семантического анализаторов, а также генератора кода. Методы компиляции программ на Паскале описаны на языке С. Содержание:Глава 1. Структура компилятора...... 6 Глава 2. Модуль ввода-вывода...... 10 2. 1. Взаимодействие между модулем ввода-вывода и анализатором...... 10 2. 2. Программирование модуля ввода-вывода...... 11 2. 2. 1. Формирование таблицы ошибок...... 12 2. 2. 2. Печать сообщений об ошибках...... 13 Глава 3. Лексический анализатор...... 15 3. 1. Взаимодействие лексического анализатора с другими частями компилятора...... 15 3. 2. Программирование лексического анализатора...... 18 3. 2. 1. Лексические ошибки...... 24 Глава 4. Синтаксический анализатор...... 26 Глава 5. Нейтрализация синтаксических ошибок...... 36 Глава 6. Семантический анализатор...... 45 6. 1. Контекстные условия...... 45 6. 2. Организация таблиц семантического анализатора...... 46 6. 2. 1. Таблица идентификаторов...... 46 6. 2. 2. Таблица типов...... 60 6. 2. 3. Таблица меток...... 71 6. 3. Программирование семантического анализатора...... 75 6. 3. 1. Создание фиктивной области действия...... 75 6. 3. 2. Анализ описания переменных...... 78 6. 3. 3. Анализ описания типов...... 81 6. 3. 4. Анализ операторов...... 84 6. 3. 5. Анализ выражения...... 92 Глава 7. Введение в генерацию кода...... 99 Глава 8. Архитектура модульного конвейерного процессора...... 101 8. 1. Регистры...... 101 8. 2. Способы представления данных...... 102 8. 3. Способы адресации операндов...... 105 8. 4. Команды...... 108 8. 4. 1. Команды для С- и Р-регистров...... 110 8. 4. 2. Команды пересылки данных между локальной памятью и регистрами...... 112 8. 4. 3. Команды для И-регистров...... 112 8. 4. 4. Команды передачи управления...... 113 8. 4. 5. Управление регистровым контекстом...... 115 8. 4. 6. Команды для Д-регистров...... 122 8. 4. 7. Векторные команды...... 124 Глава 9. Организация оперативной памяти во время выполнения программы...... 126 9. 1. Области данных процедур...... 126 9. 2. Адресация переменных...... 127 9. 2. 1. Адресация простых переменных...... 128 9. 2. 2. Адресация переменных с индексами...... 133 9. 2. 3. Адресация поля записи...... 135 9. 3. Память для данных скалярных типов...... 135 9. 4. Память для данных структурных типов...... 135 Глава 10. Генерация кода...... 139 10. 1. Формирование команд...... 139 10. 2. Промежуточное представление и генерация кода для выражений...... 142 10. 3. Промежуточное представление и генерация кода для операторов...... 150 Литература...... 167 Приложение 1. Синтаксис стандарта языка Паскаль...... 168 Приложение 2. Сообщения об ошибках Паскаль-компилятора...... 179 Приложение 3. Коды команд для С- и Р-регистров...... 182 Издательство: "БИНОМ. Лаборатория знаний" (2017)
ISBN: 9785001014508 |
Другие книги схожей тематики:
Автор | Книга | Описание | Год | Цена | Тип книги |
---|---|---|---|---|---|
Залогова Любовь Алексеевна | Разработка Паскаль-компилятора | 183 стр. В книге излагается структура компилятора, основные принципы построения всех его основных блоков… — БИНОМ, (формат: 60x90/16, 183 стр.) Подробнее... | 2010 | 399 | бумажная книга |
Залогова Любовь Алексеевна | Разработка Паскаль-компилятора | В книге излагается структура компилятора, основные принципы построения всех его основных блоков … — Бином. Лаборатория знаний, Подробнее... | 2017 | 372 | бумажная книга |
Залогова Л. | Разработка Паскаль-компилятора | Для студентов и специалистов, занимающихся созданием программного обеспечения, а также для желающих… — (формат: Твердая глянцевая, 183 стр.) Подробнее... | 2007 | 273 | бумажная книга |
Л. А. Залогова | Разработка Паскаль-компилятора | — Лаборатория знаний, электронная книга Подробнее... | 2017 | 198 | электронная книга |
См. также в других словарях:
Паскаль (язык программирования) — Эта статья или раздел нуждается в переработке. В Паскале нет модулей, ООП и прочих новомодных веяний. Описание расширений должно присутствовать только в статьях о соответ … Википедия
Компьютерное программирование — Разработка программного обеспечения Процесс разработки ПО Шаги процесса Анализ | Проектирование | Реализация | Тестирование | Внедрение | Сопровождение Модели / методы Agile | Cleanroom | Итеративная | Scrum | RUP | MSF | Спиральная | … Википедия
Delphi (язык программирования) — У этого термина существуют и другие значения, см. Delphi. Эта статья о языке программирования. Об интегрированной среде разработки см. Delphi (среда разработки). Delphi … Википедия
Ада (язык программирования) — У этого термина существуют и другие значения, см. Ада. Ада Семантика: мультипарадигменный: конкурентное, обобщённое, императивное, объектно ориентированное, распределённое программирование Тип исполнения: компилируемый Появился в: 1980 … Википедия
Turbo Pascal — У этого термина существуют и другие значения, см. Turbo. Turbo Pascal Среда разработки Turbo Pascal 7.1 Тип … Википедия
Ada — У этого термина существуют и другие значения, см. Ада. Ада Семантика: мультипарадигменный: конкурентное, обобщённое, императивное, объектно ориентированное, распределённое, программирование Тип исполнения: компилируемый Появился в … Википедия