Skip to content
Snippets Groups Projects
README.md 6.66 KiB
Newer Older
### Как использовать этот репозиторий

git clone --recurse-submodules <репозиторий> 

Bogdan Voloshin's avatar
Bogdan Voloshin committed
Необходимы следующие NuGet пакеты:

* NUnit
* NUnit3TestAdapter
* NUnit.ConsoleRunner

### Как запустить тесты из репозитория

[Инструкция](https://github.com/czen/MMCS_CS311/wiki/Как-запустить-тесты-из-репозитория)
Anton Bagliy's avatar
Anton Bagliy committed
### Учебная карта дисциплины
Anton Bagliy's avatar
Anton Bagliy committed

Anton Bagliy's avatar
Anton Bagliy committed
[См. страничку в Moodle](http://edu.mmcs.sfedu.ru/course/view.php?id=194)
Anton Bagliy's avatar
Anton Bagliy committed

Anton Bagliy's avatar
Anton Bagliy committed
### Программа курса
Anton Bagliy's avatar
Anton Bagliy committed

Anton Bagliy's avatar
Anton Bagliy committed
[Программа курса 2014-15](http://it.mmcs.sfedu.ru/docs/Miks/MPC/ProgrMPC2014-15.pdf)
Anton Bagliy's avatar
Anton Bagliy committed

Anton Bagliy's avatar
Anton Bagliy committed
### Страница курса на Moodle
Anton Bagliy's avatar
Anton Bagliy committed

Anton Bagliy's avatar
Anton Bagliy committed
[Страница курса на Moodle](http://edu.mmcs.sfedu.ru/course/view.php?id=194)
Anton Bagliy's avatar
Anton Bagliy committed

Anton Bagliy's avatar
Anton Bagliy committed
### Авторы курса

* Лекции, практические задания - С.С. Михалкович
* дополнительные задания, подготовка и сопровождение материалов - А.П. Баглий

Anton Bagliy's avatar
Anton Bagliy committed
#### Лекции
Anton Bagliy's avatar
Anton Bagliy committed

Bogdan Voloshin's avatar
Bogdan Voloshin committed
[Лекции](https://drive.google.com/drive/folders/1GNQJ-3dKUgvm2moGDhBxUR06i_0gqkEm?usp=sharing)
Anton Bagliy's avatar
Anton Bagliy committed

Anton Bagliy's avatar
Anton Bagliy committed
#### Практические занятия
Anton Bagliy's avatar
Anton Bagliy committed

Bogdan Voloshin's avatar
Bogdan Voloshin committed
Тема 1. [Синтаксические диаграммы автоматных языков и реализация распознавателей на их основе](http://gitlab.mmcs.sfedu.ru/mmcs/Compilers/-/wikis/Синтаксические_диаграммы_автоматных_языков_и_реализация_распознавателей_на_их_основе)
Anton Bagliy's avatar
Anton Bagliy committed

Bogdan Voloshin's avatar
Bogdan Voloshin committed
Тема 2. [ Создание ручного лексического анализатора простого языка программирования](http://gitlab.mmcs.sfedu.ru/mmcs/Compilers/-/wikis/Создание_лексического_анализатора_простого_языка_программирования)
Anton Bagliy's avatar
Anton Bagliy committed

Bogdan Voloshin's avatar
Bogdan Voloshin committed
Тема 3. [Создание лексического анализатора с помощью программы GPLex](http://gitlab.mmcs.sfedu.ru/mmcs/Compilers/-/wikis/Создание_лексического_анализатора_с_помощью_программы_GPLex)
Anton Bagliy's avatar
Anton Bagliy committed

Bogdan Voloshin's avatar
Bogdan Voloshin committed
Тема 4. [ Создание ручного синтаксического анализатора простого языка программирования](http://gitlab.mmcs.sfedu.ru/mmcs/Compilers/-/wikis/Создание_синтаксического_анализатора_простого_языка_программирования)
Anton Bagliy's avatar
Anton Bagliy committed

Bogdan Voloshin's avatar
Bogdan Voloshin committed
Тема 5. [Создание синтаксического анализатора с помощью программы GPPG](http://gitlab.mmcs.sfedu.ru/mmcs/Compilers/-/wikis/Создание_синтаксического_анализатора_с_помощью_программы_GPPG)
Anton Bagliy's avatar
Anton Bagliy committed

Bogdan Voloshin's avatar
Bogdan Voloshin committed
Тема 6. [Семантические действия при синтаксическом разборе. Построение синтаксического дерева программы](http://gitlab.mmcs.sfedu.ru/mmcs/Compilers/-/wikis/Семантические_действия_при_синтаксическом_разборе._Построение_синтаксического_дерева_программы)
Anton Bagliy's avatar
Anton Bagliy committed

Bogdan Voloshin's avatar
Bogdan Voloshin committed
Тема 7. [Визиторы по синтаксическому дереву](http://gitlab.mmcs.sfedu.ru/mmcs/Compilers/-/wikis/Визиторы_по_синтаксическому_дереву)
Anton Bagliy's avatar
Anton Bagliy committed

Bogdan Voloshin's avatar
Bogdan Voloshin committed
Тема 8. [Генерация и выполнение IL-кода](http://gitlab.mmcs.sfedu.ru/mmcs/Compilers/-/wikis/Генерация_и_выполнение_IL-кода)
Bogdan Voloshin's avatar
Bogdan Voloshin committed

Bogdan Voloshin's avatar
Bogdan Voloshin committed
Дополнительные темы. [Индивидуальные задания](http://gitlab.mmcs.sfedu.ru/mmcs/Compilers/-/wikis/Индивидуальные_задания)
Anton Bagliy's avatar
Anton Bagliy committed

#### Устаревшие темы

Bogdan Voloshin's avatar
Bogdan Voloshin committed
Тема 1. [Конечные автоматы и реализация распознавателей на их основе](http://gitlab.mmcs.sfedu.ru/mmcs/Compilers/-/wikis/Конечные_автоматы_и_реализация_распознавателей_на_их_основе)
Anton Bagliy's avatar
Anton Bagliy committed

Bogdan Voloshin's avatar
Bogdan Voloshin committed
Тема 6. [Создание парсеров на основе GPLEX+GPPG](http://gitlab.mmcs.sfedu.ru/mmcs/Compilers/-/wikis/Создание_парсеров_на_основе_GPLEX+GPPG)
Anton Bagliy's avatar
Anton Bagliy committed

Bogdan Voloshin's avatar
Bogdan Voloshin committed
Тема 7. [Семантические действия в синтаксическом анализаторе. Построение дерева программы](http://gitlab.mmcs.sfedu.ru/mmcs/Compilers/-/wikis/Семантические_действия_в_синтаксическом_анализаторе._Построение_дерева_программы)
Anton Bagliy's avatar
Anton Bagliy committed

Bogdan Voloshin's avatar
Bogdan Voloshin committed
[Устаревшие вспомогательные материалы к теме Yacc-файл и его формат](http://gitlab.mmcs.sfedu.ru/mmcs/Compilers/-/wikis/Занятие_4_по_курсу_МПК)
Anton Bagliy's avatar
Anton Bagliy committed

[Устаревшие задания](http://pascalabc.net/wiki/index.php/GPLex_%2B_GPPG)

Bogdan Voloshin's avatar
Bogdan Voloshin committed
[ Индивидуальное задание 3 на зачет 2011 г.](http://gitlab.mmcs.sfedu.ru/mmcs/Compilers/-/wikis/Задания_на_зачет_2011)
Anton Bagliy's avatar
Anton Bagliy committed

Выполнить:

Anton Bagliy's avatar
Anton Bagliy committed
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)

#### Литература
Anton Bagliy's avatar
Anton Bagliy committed

Anton Bagliy's avatar
Anton Bagliy committed
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)
Anton Bagliy's avatar
Anton Bagliy committed