### Учебная карта дисциплины [См. страничку в 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 уч. год) #### Лекции [Наброски к лекциям](Наброски_к_лекциям_"Методы_построения_компиляторов" "wikilink") #### Практические занятия Тема 1. [Синтаксические диаграммы автоматных языков и реализация распознавателей на их основе](Синтаксические_диаграммы_автоматных_языков_и_реализация_распознавателей_на_их_основе "wikilink") Тема 2. [ Создание ручного лексического анализатора простого языка программирования](Создание_лексического_анализатора_простого_языка_программирования "wikilink") Тема 3. [Создание лексического анализатора с помощью программы GPLex](Создание_лексического_анализатора_с_помощью_программы_GPLex "wikilink") Тема 4. [ Создание ручного синтаксического анализатора простого языка программирования](Создание_синтаксического_анализатора_простого_языка_программирования "wikilink") Тема 5. [Создание синтаксического анализатора с помощью программы GPPG](Создание_синтаксического_анализатора_с_помощью_программы_GPPG "wikilink") Тема 6. [Семантические действия при синтаксическом разборе. Построение синтаксического дерева программы](Семантические_действия_при_синтаксическом_разборе._Построение_синтаксического_дерева_программы "wikilink") Тема 7. [Визиторы по синтаксическому дереву](Визиторы_по_синтаксическому_дереву "wikilink") Тема 8. [Генерация и выполнение IL-кода](Генерация_и_выполнение_IL-кода "wikilink") #### Устаревшие темы Тема 1. [Конечные автоматы и реализация распознавателей на их основе](Конечные_автоматы_и_реализация_распознавателей_на_их_основе "wikilink") Тема 6. [Создание парсеров на основе GPLEX+GPPG](Создание_парсеров_на_основе_GPLEX+GPPG "wikilink") Тема 7. [Семантические действия в синтаксическом анализаторе. Построение дерева программы](Семантические_действия_в_синтаксическом_анализаторе._Построение_дерева_программы "wikilink") [Устаревшие вспомогательные материалы к теме Yacc-файл и его формат](Занятие_4_по_курсу_МПК "wikilink") [Устаревшие задания](http://pascalabc.net/wiki/index.php/GPLex_%2B_GPPG) [ Индивидуальное задание 3 на зачет 2011 г.](Задания_на_зачет_2011 "wikilink") Выполнить: 1. создав ручной компилятор с нисходящим разбором 2. создав компилятор с использованием 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) #### Литература 1. А.Ахо, М.Лам, Р.Сети, Д.Ульман. Компиляторы. Принципы, технологии, инструменты. М, Вильямс, 2008 2. С.З.Свердлов. Языки программирования и методы трансляции. Питер, 2007 3. Э.А.Опалева, В.П.Самойленко. Языки программирования и методы трансляции. BHV, 2005 4. Ю.Г.Карпов. Основы построения трансляторов. BHV, 2005 5. [В.А.Серебряков, М.П.Галочкин «Основы конструирования компиляторов»](http://citforum.ru/programming/theory/serebryakov/) 6. [Книга “Языки и трансляции” Б. К. Мартыненко](http://www.math.spbu.ru/user/mbk/ЯЗЫКИ_И_ТРАНСЛЯЦИИ(изд.2)/Reference.htm)