Программное обеспечение систем автоматизированного проектирования
Бакалавриат (Системы автоматизированного проектирования)
Преподаватели:
Описание
Цель изучения дисциплины - овладение основами теории информации и кодирования; методами трансляции языков проектирования и компиляции языков программирования, принципами и методами компиляции и интерпретации; методами разработки структур данных, способами реализации прикладных подсистем ПО САПР на основе передовых технологий программирования.
Общий объем дисциплины составляет 4 зачетные единицы (з.е.), 144 академических часа.
План занятий
Модуль 1. Принципы проектирования лексических анализаторов и их автоматизация.
- Лекция 1. Введение - 2 час. Классификация языков проектирования. Определение языка. Входной язык. Язык управления и сопровождения. Промежуточный язык. Выходной язык. Блок-схема процесса проектирования с указанием различных видов языков проектирования. Многоуровневость лингвистического обеспечения САПР. Основные функции и требования к языкам проектирования. Принцип многоуровневости ЛО САПР. Блок-схема процесса трансляции языков проектирования.
- Лекция 2. Регулярные выражения – основа лексического разбора.
- Лекция 3. Нерегулярные выражения. Конечные автоматы регулярных выражений.
- Лекция 4. Генератор программ, предназначенных для лексической обработки входного потока символов Lex(CP)..
- Лекция 5. Спецификации набора правил распознавания и обработки лексем во входном потоке.
- Лекция 6. Функциональная реализация правил.
- Лекция 7. Использование прикладных и перегруженных функций секции подпрограмм.
Модуль 2. Принципы проектирования синтаксических анализаторов и автоматизация их проектирования.
- Лекция 1. Методы грамматического разбора.
- Лекция 2. Генератор программ синтаксического разбора YACC(CP).
- Лекция 3. Использование секции деклараций для разбора неопределенностей анализа входного потока.
- Лекция 4. Обработка ошибок при грамматическом разборе.
- Лекция 5. Среда выполнения Yacc.
Модуль 3. Формальный подход к реализации языков проектирования и программирования конечных автоматов. Принципы проектирования трансляторов и их автоматизация.
- Лекция 1. Формальные языки и грамматики.
- Лекция 2. Формальный подход к реализации языков проектирования.
- Лекция 3. Классификация порождающих грамматик.
- Лекция 4. Нормализация порождающих грамматик. Автоматные языки и грамматики.
- Лекция 5. Автоматизированное проектирование трансляторов.