Теория алгоритмов и формальных языков. Мелихов А.Н - 11 стр.

UptoLike

0.6. Понятие транслятора
Транслятор - это программа, переводящая запись произвольного текста
на одном (входном) языке в эквивалентный ему текст на другом (выходном)
языке.
Если входным языком является процедурно-ориентированный язык, то
транслятор называют компилятором. В компиляторах вся программа сначала
целиком транслируется, а затем уже принимается к исполнению ЭВМ. Если
трансляция и
исполнение программы совмещены во времени, то транслятор
называют интерпетатором. Наиболее распространены трансляторы-
компиляторы.
Любая программа состоит из предложений, записанных в символах
алфавита языка. Из этих предложений и слов (лексики) языка по правилам
синтаксиса строятся более сложные предложения. Описание смысла
предложений производится с помощью семантики языка. Семантика нужна
для того, чтобы
ЭВМ могла определить, как выполнять каждое предложение.
Трансляция - это перевод программы с одного языка на другой,
связанный в общем случае с изменением алфавита, лексики и синтаксиса
языка программы с сохранением ее семантики.
Процесс трансляции укрупнено можно представить как
последовательность действий по опознаванию конструкций (предложений
программы), определению их смысла и
формированию эквивалентных им
записей на выходном языке. Как правило, на транслятор возлагают ряд
дополнительных функций, таких, как контроль входной программы,
распределение памяти и так далее. Набор этих функций влияет на структуру
транслятора. Однако структура транслятора определяется в основном не
этим, а методом трансляции.
Различают синтаксические и прямые методы трансляции. Прямые
методы ориентированы на конкретные входные языки и конкретные ЭВМ.
Синтаксические методы используют для анализа входных программ свойства