- •Языки программирования и методы трансляции
- •Литература
- •Методы построения трансляторов. Лексический анализ.
- •Описание модельного языка
- •Лексический анализ
- •Алгоритм разбора
- •Алгоритм разбора
- •Алгоритм разбора
- •Алгоритм разбора
- •Алгоритм разбора
- •Алгоритм разбора
- •Алгоритм разбора
- •Алгоритм разбора
- •Алгоритм разбора
- •Алгоритм разбора
- •Алгоритм разбора
- •Алгоритм разбора
- •Алгоритм разбора
- •Алгоритм разбора
- •О недетерминированном разборе
- •О недетерминированном разборе
Языки программирования и методы трансляции
Часть 2. Методы трансляции
Литература
Соколов В. А. Введение в теорию формальных языков. // Учебное пособие. – ЯрГУ, Ярославль, 2014.
Быкова Н. Д., Соколов В.А. Задачник по формальным языкам. // Методическое пособие. – ЯрГУ, Ярославль, 2016.
АхоА., Ульман Дж. Теория синтаксического анализа, перевода и компиляции. // М.: Мир, 1978, Т.1; Т.2.
ХопкрофтДж., МотваниР., Ульман Дж. Введение в теорию автоматов, языков и вычислений. // М.:
Методы построения трансляторов. Лексический анализ.
Практически во всех трансляторах (и в компиляторах, и в интерпретаторах) в том или ином виде присутствуют перечисленные ниже процессы:
•лексический анализ,
•синтаксический анализ,
•семантический анализ,
•генерация внутреннего представления программы,
•оптимизация,
•генерация объектной программы.
В конкретных компиляторах порядок этих процессов может быть несколько иным, некоторые из них могут объединяться в одну фазу, другие могут выполняться в течение всего процесса компиляции. В интерпретаторах и при смешанной стратегии трансляции некоторые этапы могут вообще отсутствовать.
Далее мы рассмотрим некоторые методы, используемые для построения анализаторов (лексического, синтаксического и семантического), язык промежуточного представления программы, способ генерации промежуточной программы, ее интерпретации. Излагаемые алгоритмы и методы иллюстрируются на примере модельного паскалеподобного языка (М-языка). Все алгоритмы записаны на языке Си.