`1Казанский (приволжский) федеральный университет
ИНСТИТУТ ВЫЧИСЛИТЕЛЬНОЙ МАТЕМАТИКИ И ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ
КАФЕДРА ТЕОРЕТИЧЕСКОЙ КИБЕРНЕТИКИ
"УТВЕРЖДАЮ"
Проректор
по образовательной деятельности
Р. Г. Минзарипов A
ПРОГРАММА ДИСЦИПЛИНЫ
ПАКЕТЫ ПРИКЛАДНЫХ ПРОГРАММ
Цикл Б3.ДВ.2.1
Б1 – гуманитарный, социальный и экономический цикл; Б2 – математический и естественнонаучный цикл; Б3 –профессиональный цикл; НИР – научно-исследовательская работа; ФТД – факультативы.
Направление 010400 – ПРИКЛАДНАЯ МАТЕМАТИКА И ИНФОРМАТИКА
(Номер специальности) (Название специальности)
Принята на заседании кафедры теоретической кибернетики
(протокол №___ от "__"__________201__ г.)
Заведующий кафедрой____________________ (Ф. М. Аблаев)
Утверждена Учебно-методической комиссией Института ВМиИТ
(протокол №___ от "__"__________201__ г.)
Председатель комиссии ____________________ (Р.Х. Латыпов)
Рабочая программа дисциплины « ПАКЕТЫ ПРИКЛАДНЫХ ПРОГРАММ »
Предназначена для студентов 4курса
по специальности: 01.02.00 - Прикладная математика и информатика
(Номер специальности) (Название специальности)
по специализации: 01.02.08 - Математическая кибернетика (Номер специализации) (Название специализации)
01.02.09 - Математическое и программное обеспечение (Номер специализации) (Название специализации)
вычислительных машин
АВТОР: Гусенков Александр Михайлович, старший преподаватель кафедры теоретической кибернетики КФУ
КРАТКАЯ АННОТАЦИЯ: В данном курсе рассматриваются пакеты, входящие в стандартный набор UNIX-подобных систем и технология их использования. Наиболее подробно изучаются пакеты YACC и LEX, используемые для автоматизации построения специализированных языков обработки информации. Аналоги подобных средств автоматизации, основанные на генерации лексического анализатора в виде конечного автомата и синтаксического анализатора в виде МП-автомата, имеются во всех современных универсальных средах.
Требования к уровню подготовки студента, завершившего изучение дисциплины
Пакеты прикладных программ
(Наименование дисциплины)
Студенты, завершившие изучение данной дисциплины должны ориентироваться в UNIX- подобных системах. Приобрести навыки работы технологии проектирования и реализации интерпретаторов и компиляторов специализированных языков обработки информации с использованием пакетов YACC и LEX, уметь модифицировать их. Приобрести навыки создания собственных пакетов и добавления их в стандартную оболочку ОС UNIX.
Объем дисциплины и виды учебной работы (в часах).
Форма обучения : очная
Количество семестров : 1
Форма контроля: 1 семестр __экзамен
зачет, экзамен
Виды учебных занятий |
Количество часов |
|
8 семестр |
семестр |
|
Всего часов по дисциплине |
108 |
|
Самостоятельная работа |
54 |
|
Аудиторных занятий |
54 |
|
в том числе лекций |
0 |
|
семинарских (или лабораторно-практических) |
54 |
|
Контрольных работ |
0 |
|
3.Содержание дисциплины.
3.1 ТРЕБОВАНИЯ ГОСУДАРСТВЕННОГО ОБРАЗОВАТЕЛЬНОГО СТАНДАРТА К ОБЯЗАТЕЛЬНОМУ МИНИМУМУ СОДЕРЖАНИЯ ПРОГРАММЫ
Индекс |
Наименование дисциплины и ее основные разделы |
Всего часов |
ЕН.Ф.01 |
|
|
Примечание: Если дисциплина, устанавливается вузом самостоятельно, то в данной таблице ставится прочерк.
3.2. СОДЕРЖАНИЕ РАЗДЕЛОВ ДИСЦИПЛИНЫ
№ п/п |
Название темы и ее содержание |
Количество часов |
|
Лекции |
семинарские (лаб.-практ.) занятия |
||
1. |
Введение. Проектирование компиляторов и интерпретаторов специализированных языков. Лексический и синтаксический анализ. Реализация семантики языка. Пакеты YACC и LEX ОС UNIX.
|
|
2
|
2. |
Лексический анализ. Генератор лексических анализаторов lex. Схема построения и функционирования. |
|
2
|
3. |
Язык регулярных выражений для описания лексем во входном файле генератора LEX. Первичные элементы. Унарные операции. Бинарные операции. Примеры регулярных выражений. |
|
4
|
4. |
Генератор лексических анализаторов LEX Структура входного файла. Использование секций описаний, правил и программ. |
|
2
|
5. |
Встроенные переменные, функции и макрооперации генератора LEX. |
|
2 |
6 |
Формат правил для LEX. Состояния лексического анализатора. Активные правила. Способы реализации действий. |
|
2 |
7 |
Альтернативные правила. Способы разрешения неоднозначностей |
|
2 |
8 |
Примеры входных файлов генератора lex. Использование генератора lex. |
|
4 |
9 |
Синтаксический анализ. Генератор синтаксических анализаторов yacc. Схема построения и функционирования. |
|
2 |
10 |
Генератор лексических анализаторов YACC. Правила для описания LR(1) грамматики языка. Рекурсивные правила. |
|
2 |
11 |
Реализация действий. Значения терминальных и нетерминальных символов. Результирующее значение правил. |
|
4 |
12 |
Структура входного файла YACC. Использование разделов описаний правил и программ. |
|
2 |
13 |
Директивы YACC. Определение лексем, аксиомы грамматики, установка приоритетов и порядка выполнения операций. Встроенные функции. |
|
4 |
14 |
Использование в действиях псевдопеременных. |
|
4 |
15 |
Конфликтные ситуации при грамматическом разборе и способы их устранения. |
|
4 |
16 |
Обработка ошибок при грамматическом разборе. |
|
4 |
17 |
Пример реализации калькулятора с памятью с использованием пакетов YACC и LEX. |
|
4 |
18 |
Совместное использование генераторов yacc и lex |
|
4 |