Теория языков программирования и методы трансляции Тема 1 Основные концепции.

Презентация:



Advertisements
Похожие презентации
М.Ю. Харламов, ВНУ им. В.Даля, Транслятор Транслятор - это программа, которая переводит программу на исходном (входном) языке в эквивалентную ей.
Advertisements

Введение в теорию компиляции Основные принципы построения трансляторов.
Язык высокого уровня компилятор Программа компиляторов Сделал:Студент группы:Ис-2о(очная)Воротов Валентин.
ЛАБОРАТОРНАЯ РАБОТА 1 ПРОЕКТИРОВАНИЕ И РЕАЛИЗАЦИЯ ТАБЛИЦ, ИСПОЛЬЗУЕМЫХ В ТРАНСЛЯТОРЕ Рейн Т. С.
Общее устройство компиляторов. Использование Lex и Yacc Сергей Нечаев, аспирант МО ВВС ИВМиМГ.
ПРЕЗЕНТАЦИЯ НА ТЕМУ: ПРЕЗЕНТАЦИЯ НА ТЕМУ: ВИДЫ ТРАНСЛЯЦИИ Составил: Ревнивцев М.В Преподаватель: Кленина В.И.
Лекция 7 Управление памятью Сегментная, страничная и сегментно- страничная организация памяти.
Объектно-ориентированное программирование Карпов В.Э. Смолток. Лекция 4. Байт-код.
Языки и методы программирования Преподаватель – доцент каф. ИТиМПИ Кузнецова Е.М. Лекция 2.
Текстовый язык автоматного программирования В. С. Гуров, М. А. Мазин, А. А. Шалыто.
ЯЗЫКИ ПРОГРАММИРОВАНИЯ С РАСШИРЯЕМЫМ СИНТАКСИСОМ П.В. Егоров Екатеринбург, Июнь 2006.
П РЕОБРАЗОВАНИЕ ПРОГРАММ НА ЯЗЫКЕ C-DVM В ПРОГРАММЫ ДЛЯ КЛАСТЕРОВ выполнила: студентка 527 группы Коваленко Алина Игоревна научный руководитель: профессор,
Знакомство с IDE Pascal. Этапы решения задачи на компьютере : 1. Постановка реальной задачи и ее содержательный анализ 2. Создание модели ( формализация.
Трансляция - процесс перевода программы, из алгоритмического языка на машинный язык (в коды компьютера). Транслятор - программа-переводчик. ТРАНСЛЯЦИЯ.
Теория языков программирования и методы трансляции Тема 8 Генерация кода.
Функциональное программирование Лекция 11. Содержание Анализ искусственных и естественных языков Метапрограммирование: Quotations 2.
Системы программирования Средства создания программ Интегрированные системы программированияИнтегрированные системы программирования Среды быстрого проектирования.
Лекция 1 Введение в программирование и язык C. Машинный код Машинный код или машинный язык система команд (набор кодов операций) конкретной вычислительной.
М.Ю. Харламов, ВНУ им. В.Даля, получает строку токенов от лексического анализатора и проверяет, может ли эта строка по­ рождаться грамматикой исходного.
§ 4 Языки программирования Глава 1. Введение в программирование.
Транксрипт:

Теория языков программирования и методы трансляции Тема 1 Основные концепции

Компиляция Компилятор – программа, которая считывает текст программы, написанной на исходном, и транслирует (переводит) его в эквивалентный текст на целевом языке.

Компиляция В зависимости от предназначения, принципов и технологии создания компиляторы могут быть Однопроходные Многопроходные Исполняющие Отлаживающие Оптимизирующие

Компиляция Анализ – разбиение исходной программы на составные части Синтез – конструирование целевой программы

Контекст компилятора При создании целевой программы, кроме компилятора, могут потребоваться и другие программы.

Фаза анализа Лексический анализ Синтаксический анализ Семантический анализ

Лексический анализ (сканирование) Поток символов исходной программы считывается слева направо и группируется в токены, представляющие собой последовательности символов с определенным совокупным значением.

Синтаксический анализ (разбор) Выполняет группирование токенов исходной программы в грамматические фразы, используемые компилятором для синтеза вывода.

Семантический анализ Проверяется наличие семантических ошибок и накапливается информация о типах для следующей стадии.

Инструментальные средства Генераторы сканеров Генераторы синтаксических анализаторов Автоматические генераторы кода

Литература Альфред Ахо, Рави Сети, Джеффри Ульман – Компиляторы. Принципы, технологии, инструменты. Робин Хантер – Основные концепции компиляторов. Т. Пратт, М. Зелковец – Языки программирования: разработка и реализация. Ю.Г. Карпов – Теория и технология программирования. Основы построения трансляторов.