|
|
__NOTOC__
|
|
|
## Учебная карта дисциплины
|
|
|
[См. страничку в Moodle](http://edu.mmcs.sfedu.ru/course/view.php?id=194)
|
|
|
|
|
|
## Программа курса
|
|
|
[Программа курса 2014-15](http://it.mmcs.sfedu.ru/docs/Miks/MPC/ProgrMPC2014-15.pdf)
|
|
|
|
|
|
## Страница курса на Moodle
|
|
|
[Страница курса на Moodle](http://edu.mmcs.sfedu.ru/course/view.php?id=194)
|
|
|
|
|
|
### Скан лекций
|
|
|
|
|
|
|
|
|
[Скан лекций](http://it.mmcs.sfedu.ru/files?func=fileinfo&id=1937) (2008/09 уч. год)
|
|
|
|
|
|
### Лекции
|
|
|
|
|
|
|
|
|
[к лекциям "Методы построения компиляторов"|Наброски к лекциям]([Наброски)]
|
|
|
|
|
|
### Практические занятия
|
|
|
|
|
|
|
|
|
Тема 1. [диаграммы автоматных языков и реализация распознавателей на их основе]([Синтаксические)]
|
|
|
|
|
|
Тема 2. [лексического анализатора простого языка программирования | Создание ручного лексического анализатора простого языка программирования]([Создание)]
|
|
|
|
|
|
Тема 3. [лексического анализатора с помощью программы GPLex]([Создание)]
|
|
|
|
|
|
Тема 4. [синтаксического анализатора простого языка программирования | Создание ручного синтаксического анализатора простого языка программирования]([Создание)]
|
|
|
|
|
|
Тема 5. [синтаксического анализатора с помощью программы GPPG]([Создание)]
|
|
|
|
|
|
Тема 6. [действия при синтаксическом разборе. Построение синтаксического дерева программы]([Семантические)]
|
|
|
|
|
|
Тема 7. [по синтаксическому дереву]([Визиторы)]
|
|
|
|
|
|
Тема 8. [и выполнение IL-кода]([Генерация)]
|
|
|
|
|
|
### Устаревшие темы
|
|
|
|
|
|
|
|
|
Тема 1. [автоматы и реализация распознавателей на их основе]([Конечные)]
|
|
|
|
|
|
Тема 6. [парсеров на основе GPLEX+GPPG]([Создание)]
|
|
|
|
|
|
Тема 7. [действия в синтаксическом анализаторе. Построение дерева программы]([Семантические)]
|
|
|
|
|
|
[4 по курсу МПК|Устаревшие вспомогательные материалы к теме Yacc-файл и его формат]([Занятие)]
|
|
|
|
|
|
[Устаревшие задания](http://pascalabc.net/wiki/index.php/GPLex_%2B_GPPG)
|
|
|
|
|
|
[на зачет 2011 | Индивидуальное задание 3 на зачет 2011 г.]([Задания)]
|
|
|
|
|
|
Выполнить:
|
|
|
#создав ручной компилятор с нисходящим разбором
|
|
|
#создав компилятор с использованием GPLex+GPPG
|
|
|
|
|
|
|
|
|
------
|
|
|
|
|
|
### Дополнительная информация
|
|
|
|
|
|
|
|
|
[Рекомендуемая литература](http://it.mmcs.sfedu.ru/wiki/Рекомендуемая_литература#.D0.9C.D0.B5.D1.82.D0.BE.D0.B4.D1.8B_.D0.BF.D0.BE.D1.81.D1.82.D1.80.D0.BE.D0.B5.D0.BD.D0.B8.D1.8F_.D0.BA.D0.BE.D0.BC.D0.BF.D0.B8.D0.BB.D1.8F.D1.82.D0.BE.D1.80.D0.BE.D0.B2)
|
|
|
### Литература
|
|
|
|
|
|
|
|
|
# А.Ахо, М.Лам, Р.Сети, Д.Ульман. Компиляторы. Принципы, технологии, инструменты. М, Вильямс, 2008
|
|
|
# С.З.Свердлов. Языки программирования и методы трансляции. Питер, 2007
|
|
|
# Э.А.Опалева, В.П.Самойленко. Языки программирования и методы трансляции. BHV, 2005
|
|
|
# Ю.Г.Карпов. Основы построения трансляторов. BHV, 2005
|
|
|
# [В.А.Серебряков, М.П.Галочкин «Основы конструирования компиляторов»](http://citforum.ru/programming/theory/serebryakov/)
|
|
|
# [Книга "Языки и трансляции" Б. К. Мартыненко](http://www.math.spbu.ru/user/mbk/ЯЗЫКИ_И_ТРАНСЛЯЦИИ(изд.2)/Reference.htm) |