We use cookies in order to improve the quality and usability of the HSE website. More information about the use of cookies is available here, and the regulations on processing personal data can be found here. By continuing to use the site, you hereby confirm that you have been informed of the use of cookies by the HSE website and agree with our rules for processing personal data. You may disable cookies in your browser settings.

  • A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site

Theory and Methods of Translation and Compilation

2021/2022
Academic Year
RUS
Instruction in Russian
4
ECTS credits
Delivered at:
Department of Applied Mathematics and Informatics (Faculty of Informatics, Mathematics, and Computer Science (HSE Nizhny Novgorod))
Course type:
Elective course
When:
3 year, 1, 4 module

Программа дисциплины

Аннотация

Языки программирования представляют собой средство описания вычислений для людей и машин. Современный мир зависит от языков программирования, поскольку все программное обеспечение на всех компьютерах написано на том или ином языке программирования. Однако, прежде чем запустить программу, ее необходимо преобразовать в форму, которая может выполняться на компьютере. Программные системы, выполняющие такое преобразование, называются компиляторами.
Цель освоения дисциплины

Цель освоения дисциплины

  • Дать специалисту основные знания о том, как устроен компилятор
  • Дать специалисту знания о разных частях компилятора и как их можно реализовать и применять
Планируемые результаты обучения

Планируемые результаты обучения

  • Знать что такое компилятор, как он устроен, какая часть отвечает за что
  • Использовать LR анализ, построение LR(0)-автомата и его применение
  • Преобразование НКА в ДКА и использование ДКА для проверки реализации шаблона
  • Преобразование регулярного выражения в НКА
  • Проводить восходящий синтаксический анализ
  • Проводить нисходящий синтаксический анализ
  • Составление регулярного выражения для описания шаблона токена
  • Устранение неоднозначности, устранение левой рекурсии и левая факторизация грамматики
  • Что такое грамматики и как их строить
  • Что такое трёхадресный код, трансляция выражений
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Введение в компиляцию и структура компилятора
  • Лексический анализ
  • Синтаксический анализ
  • Генерация промежуточного кода
Элементы контроля

Элементы контроля

  • неблокирующий Контрольная работа 1
    Преобразование РВ в НКА и в ДКА
  • неблокирующий Контрольная работа 2
    Нисходящий СА
  • неблокирующий Практическая работа 1 и 2
    Алгоритм преобразования РВ -> НКА -> ДКА
  • неблокирующий Практическая работа 3
    Нисходящий СА
  • неблокирующий Практическая работа 4
    LR(0)-анализ
  • неблокирующий Устный ответ на вопросы из билетов
  • неблокирующий Контрольная работа 1
    Преобразование РВ в НКА и в ДКА
  • неблокирующий Контрольная работа 2
    Нисходящий СА
  • неблокирующий Практическая работа 1 и 2
    Алгоритм преобразования РВ -> НКА -> ДКА
  • неблокирующий Практическая работа 3
    Нисходящий СА
  • неблокирующий Практическая работа 4
    LR(0)-анализ
  • неблокирующий Устный ответ на вопросы из билетов
Промежуточная аттестация

Промежуточная аттестация

  • 2021/2022 учебный год 4 модуль
Список литературы

Список литературы

Рекомендуемая основная литература

  • Малявко А. А. - ФОРМАЛЬНЫЕ ЯЗЫКИ И КОМПИЛЯТОРЫ. Учебное пособие для вузов - М.:Издательство Юрайт - 2019 - 429с. - ISBN: 978-5-534-04288-7 - Текст электронный // ЭБС ЮРАЙТ - URL: https://urait.ru/book/formalnye-yazyki-i-kompilyatory-438060
  • Построение компиляторов, Вирт, Н., 2013

Рекомендуемая дополнительная литература

  • Вирт, Н. Построение компиляторов / Н. Вирт. — Москва : ДМК Пресс, 2010. — 192 с. — ISBN 978-5-94074-585-3. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/1262 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
  • Формальные языки и компиляторы : учебное пособие для вузов, Малявко, А. А., 2017

Авторы

  • Бычков Илья Сергеевич
  • Колпакова Марина Валентиновна
  • Уткина Ирина Евгеньевна