Формальные языки и компиляторы
- Раздел 1. Введение к трансляции
- Тема 1. Трансляторы: компиляторы и интерпретаторы
- Тема 2. Этапы процесса трансляции
- Тема 3. Проектирование трансляторов
- Раздел 2. Введение в теорию формальных языков
- Тема 1. Элементарные понятия
- Тема 2. Регулярные выражения
- Тема 3. Формальные грамматики
- Тема 4. Конечные автоматы
- Раздел 3. Лексический анализ
- Тема 1. Постановка задачи
- Тема 2. Способы реализации лексического акцептора
- Тема 3. Процедурная реализация лексического акцептора
- Тема 4. Автоматная модель лексического акцептора
- Раздел 4. Синтаксический анализ
- Тема 1. Введение в синтаксический анализ
- Тема 2. Нисходящие методы синтаксического акцепта
- Тема 3. Восходящие методы синтаксического акцепта
- Тема 4. Синтаксический анализ
- Раздел 5. Семантический анализ
- Тема 1. Введение в семантический анализ
- Тема 2. Программы и данные
- Тема 3. Адреса и значения
- Тема 4. Базовые типы данных
- Тема 5. Производные типы данных
- Тема 6. Контроль типов данных объектов программы
- Тема 7. Эквивалентность типов данных
- Тема 8. Ассоциации наименований объектов
- Тема 9. Среды ссылок периода исполнения
- Тема 10. Локальные данные процедур
- Тема 11. Вызывающие последовательности
- Тема 12. Доступ к нелокальным объектам
- Тема 13. Передача аргументов
- Тема 14. Функции контроля структуры транслируемой программы
- Тема 15. Семантический анализ: краткое заключение
- Раздел 6. Генерация и оптимизация кода
- Тема 1. Базовые блоки и графы потоков
- Тема 2. Объектный код
- Тема 3. Оптимизация программы
- Раздел 7. Лабораторный практикум и курсовое проектирование
- Тема 1. Учебное программное обеспечение. Состав и структура учебного ПО
- Тема 2. Лабораторный практикум
- Тема 3. Курсовое проектирование