Учебники

Дизайн компилятора — Архитектура

Компилятор можно разделить на две фазы в зависимости от способа компиляции.

Этап анализа

Известный как внешний интерфейс компилятора, фаза анализа компилятора считывает исходную программу, делит ее на основные части и затем проверяет на наличие лексических, грамматических и синтаксических ошибок. На этапе анализа создается промежуточное представление исходной программы и символа таблица, которая должна быть введена в фазу синтеза в качестве входных данных.

Этап анализа и синтеза компилятора

Фаза синтеза

Эта фаза синтеза, известная как серверная часть компилятора, генерирует целевую программу с помощью промежуточного представления исходного кода и таблицы символов.

Компилятор может иметь много фаз и проходов.

Pass : Pass относится к обходу компилятора через всю программу.

Фаза . Фаза компилятора — это различимая стадия, которая принимает входные данные с предыдущего этапа, обрабатывает и выдает выходные данные, которые можно использовать в качестве входных данных для следующего этапа. Пропуск может иметь более одной фазы.