|
|
### Учебная карта дисциплины
|
|
|
|
|
|
[См. страничку в 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)
|
|
|
|
|
|
#### Лекции
|
|
|
|
|
|
[Лекции](https://drive.google.com/drive/folders/1GNQJ-3dKUgvm2moGDhBxUR06i_0gqkEm?usp=sharing)
|
|
|
|
|
|
#### Практические занятия
|
|
|
|
|
|
Тема 1. [Синтаксические диаграммы автоматных языков и реализация распознавателей на их основе](Синтаксические_диаграммы_автоматных_языков_и_реализация_распознавателей_на_их_основе "wikilink")
|
|
|
|
|
|
Тема 2. [ Создание ручного лексического анализатора простого языка программирования](Создание_лексического_анализатора_простого_языка_программирования "wikilink")
|
|
|
|
|
|
Тема 3. [Создание лексического анализатора с помощью программы GPLex](Создание_лексического_анализатора_с_помощью_программы_GPLex "wikilink")
|
|
|
|
|
|
Тема 4. [ Создание ручного синтаксического анализатора простого языка программирования](Создание_синтаксического_анализатора_простого_языка_программирования "wikilink")
|
|
|
|
|
|
Тема 5. [Создание синтаксического анализатора с помощью программы GPPG](Создание_синтаксического_анализатора_с_помощью_программы_GPPG "wikilink")
|
|
|
|
|
|
Тема 6. [Семантические действия при синтаксическом разборе. Построение синтаксического дерева программы](Семантические_действия_при_синтаксическом_разборе._Построение_синтаксического_дерева_программы "wikilink")
|
|
|
|
|
|
Тема 7. [Визиторы по синтаксическому дереву](Визиторы_по_синтаксическому_дереву "wikilink")
|
|
|
|
|
|
Тема 8. [Генерация и выполнение IL-кода](Генерация_и_выполнение_IL-кода "wikilink")
|
|
|
|
|
|
Дополнительные темы. [Индивидуальные задания](Индивидуальные_задания "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
|
|
|
|
|
|
------------------------------------------------------------------------
|
|
|
|
|
|
#### Дополнительная информация
|
|
|
|
|
|
[Рекомендуемая литература](Рекомендуемая_литература)
|
|
|
|
|
|
#### Литература
|
|
|
|
|
|
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)
|
|
|
|