Бакалавриат
2021/2022
Компиляторы
Лучший по критерию «Полезность курса для Вашей будущей карьеры»
Лучший по критерию «Полезность курса для расширения кругозора и разностороннего развития»
Лучший по критерию «Новизна полученных знаний»
Статус:
Курс по выбору (Прикладная математика и информатика)
Направление:
01.03.02. Прикладная математика и информатика
Кто читает:
Департамент информатики
Когда читается:
3-й курс, 1, 2 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для всех кампусов НИУ ВШЭ
Преподаватели:
Булычев Дмитрий Юрьевич
Язык:
русский
Кредиты:
5
Контактные часы:
52
Программа дисциплины
Аннотация
Является дисциплиной по выбору. Дисциплина призвана познакомить студентов с базовыми идеями и методами, используемыми при создании современных компиляторов, а также дать практические навыки написания простых компиляторов. Для освоения дисциплины студентам необходимы знания, полученные в результате изучения дисциплин «Формальные языки», «Функциональное программирование».
Цель освоения дисциплины
- Формирование у студентов теоретических знаний и практических навыков по основам создания компиляторов для произвольных языков программирования.
Планируемые результаты обучения
- Знает основные этапы разработки компилятора.
- Умеет при компиляции обрабатывать ветвления, циклы, функции.
- Имеет навыки использования алгоритмов работы сборщика мусора при разработке компилятора.
Содержание учебной дисциплины
- Введение. Языки программирования и машинные архитектуры. Компилятор, интерпретатор
- Синтаксический анализ. Стековая машина
- Система команд x86. Генератор кода, конструкции управления, процедуры и функции.
- Динамические структуры данных и символические выражения
Промежуточная аттестация
- 2021/2022 учебный год 2 модуль0.5 * Устный экзамен + 0.25 * Домашнее задание 2 + 0.25 * Домашнее задание 1