9. Структурные различия языков высокого и низкого уровней. Задача синтаксического разбора. Понятие языка и грамматики. Контекстно-свободные (КС) и контекстно-зависимые грамматики. Общий алгоритм разбора КС-языка.
10. Операторные грамматики. Метод простого предшествования. Реализация метода простого предшествования. Метод приоритетов. Трансляция арифметических выражений.
11. Метод рекурсивного спуска. Схема алгоритма. Трансляция арифметических выражений методом рекурсивного спуска. Обработка ошибок в ходе трансляции. Реализация алгоритма рекурсивного спуска.
12. Средства автоматической генерации синтаксических анализаторов. Программы LEXX и YACC (Bison). Синтаксис входных файлов и порождаемый исходный текст. Объектно-ориентированная оболочка для исходного текста, порождаемого генераторами анализаторов.
13. Принципы построения и эмуляции вычислительных систем. Проектирование и реализация одноадресного интерпретатора. Обработка ошибок различных видов.
14. Простейший одноадресный компилятор. Понятие байт-кода. Эмуляция одноадресного процессора. Отладчик для эмулятора. Транслятор с языка ассемблера для одноадресной машины.
15. Проектирование и реализация транслятора с языка высокого уровня для одноадресной машины.
16. Обсуждение систем с двух- и трехадресным кодом. Регистровые вычислительные системы. Проблема распределения регистров. Обсуждение проблем реализации и оптимизации программ.
17. Принципы дизассемблирования программ. Простейший дизассемблер для процессоров рассмотренных типов.
18. Обсуждение проблем эмуляции систем функционального и логического программирования (Лиспа и Пролога). Обсуждение возможности реализациии подмножеств интерпретаторов функционального и логического языков.