Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Схемы компиляции




Выделяют две основные схемы компиляции:

- последовательную;

- интегрированную.

Последовательная схема представляет собой - совокупность последовательно выполняемых программных ком­понентов, каждый из которых соответствует одному этапу компиляции (рис. 5.1.1). Последовательная схема предполагает не менее одного просмотра (прохода) программы на каждом этапе. Например, при генерации кода может выполняться два просмотра, а каж­дый метод машинно-независимой оптимизации требует по край­ней мере одного просмотра. Рассмотренные методы построения промежуточной программы не требуют наличия разбора, и синтаксический анализатор может вообще не выполнять ни­какого преобразования программы. Последовательная схема, несомненно, проста и понятна, но она громоздка (по объему занимаемой памяти и времени компиляции программы) и при­меняется редко.

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

Рис. 5.1 - Схемы компиляции: а - последовательная,

б - интегрированная

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


Поделиться:

Дата добавления: 2015-08-05; просмотров: 92; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты