Часть 1. Задачи трансляции
ГЛАВА 1. ПОНЯТИЕ ОБ ЭВМ И МАШИННОМ ЯЗЫКЕ
§1. Логическая схема ЭВМ
§2. Общее представление о машинном языке на основе простейшей (трехадресной)
модели
§3. Другие модели архитектуры ЭВМ и машинных языков
§4. Расширения машинных языков и машинно-зависимые языки
§5. Структурная организация данных в памяти ЭВМ
ГЛАВА 2. ОСНОВНЫЕ ЧЕРТЫ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ
§1. Разнообразие языков программирования
§2. Структура языка программирования
§3. Простые типы данных
§4. Операции, функции и выражения
§5. Структуры данных
§6. Операторы
§7. Программные единицы
§8. Порождающие грамматики
§9. Язык программирования Минал
ГЛАВА 3. СИСТЕМЫ ПРОГРАММИРОВАНИЯ И ТИПЫ ЯЗЫКОВЫХ ПРОЦЕССОРОВ
§1. Общее представление о системе программирования
§2. Виды трансляторов
Краткий обзор и комментарии к части 1
Часть II. Методы и техника трансляции
ГЛАВА 4. ОБЩЕЕ ПРЕДСТАВЛЕНИЕ О ПРОЦЕССЕ ТРАНСЛЯЦИИ
§1. Принципиальная схема трансляции
§2. Построение абстрактной программы
§3. Этап генерации
§4. Оптимизация
§5. Обнаружение ошибок
ГЛАВА 5. ЛЕКСИЧЕСКИЙ АНАЛИЗ
§1. Распознаватели
§2. Функции лексического анализа
§3. Реализации лексического анализа в трансляторе
ГЛАВА 6. СИНТАКСИЧЕСКИЙ АНАЛИЗ
§1. Стратегия разбора
§2. Автоматы с магазинной памятью
§3. Нисходящий разбор
§4. Восходящий разбор
§5. Горизонтальный разбор
§6. Обработка синтаксических ошибок
ГЛАВА 7. КОНТЕКСТНЫЙ АНАЛИЗ
§1. Идентификация
§2. Атрибутная индукция
ГЛАВА 8. ГЕНЕРАЦИЯ.
§1. Общая схема генерации и внутреннее представление команд
§2. Представление структур данных
§3. Генерация выражений и операторов присваивания
§4. Генерация управления вычислениями
§5. Генерация подпрограмм и обращений к ним
§6. Распределение памяти
§7. Динамическая поддержка
ГЛАВА 9. ОПТИМИЗАЦИЯ.
§1. Схемы программ
§2. Потоковый анализ программ
§3. Оптимизирующие преобразования
ГЛАВА 10. ОРГАНИЗАЦИЯ ТРАНСЛЯТОРОВ.
§1. Схемы процесса трансляции и организация трансляторов
§2. Влияние типов выходных языков на организацию трансляторов
§3. Раздельная трансляция и ее влияние на организацию трансляторов
§4. Организация основных структур данных, возникающих при трансляции
ГЛАВА 11. ПРИМЕРЫ КОНКРЕТНЫХ ТРАНСЛЯТОРОВ
§1. Транслятор с Минала
§2. Транслятор для языка Алгол 68
§3. Оптимизирующий транслятор АЛЬФА-6
Краткий обзор и комментарии к части 2
Часть 3. Автоматизация построения трансляторов
ГЛАВА 12. ПРИМЕНЕНИЕ ЯЗЫКОВ ВЫСОКОГО УРОВНЯ ДЛЯ АВТОМАТИЗАЦИИ
ПОСТРОЕНИЯ ТРАНСЛЯТОРОВ
§1. Языки высокого уровня как инструмент автоматизации программирования
§2. Краткая характеристика языков, применяемых для описания алгоритмов
трансляции
§3. Некоторые вопросы применения языков высокого уровня для автоматизации
построения трансляторов
§4. Пути повышения уровня языков
ГЛАВА 13. ИСПОЛЬЗОВАНИЕ МОДУЛЬНОГО ПОДХОДА ДЛЯ ПОСТРОЕНИЯ
ТРАНСЛЯТОРОВ
§1. Общая характеристика модульного подхода
§2. Принципы применения модульного подхода для создания совокупности
трансляторов
§3. Модульный подход в многоязыковых транслирующих системах
§4. Пример реализации в многоязыковой транслирующей системе простого
языка
ГЛАВА 14. АВТОМАТИЧЕСКОЕ ПОСТРОЕНИЕ ЧАСТЕЙ ТРАНСЛЯТОРА
§1. Элементы теории перевода
§2. Построение лексических анализаторов
§3. Построение синтаксических анализаторов
ГЛАВА 15. ИНТЕГРИРОВАННЫЕ СИСТЕМЫ АВТОМАТИЧЕСКОГО ПОСТРОЕНИЯ
ТРАНСЛЯТОРОВ
§1. Атрибутные грамматики
§2. Алгоритмы заполнения атрибутных деревьев
§3. Атрибутные СПТ
§4. Генераторы трансляторов
Краткий обзор и комментарии к части 3
Литература
Предметный указатель