Разработка распознаватель заданной символьной цепочки с помощью формул Бэкуса-Наура
Автор: Norman174 • Октябрь 11, 2019 • Отчет по практике • 3,546 Слов (15 Страниц) • 874 Просмотры
МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное автономное образовательное
учреждение высшего образования
"Южно-Уральский государственный университет
(национальный исследовательский университет)"
Высшая школа электроники и компьютерных наук
Кафедра системного программирования
ОТЧЕТ
по учебной практике
бакалавра направления 09.03.04 "Программная инженерия"
Выполнил: _______________ студент группы КЭ-104 Д.В.Потапов Проверил: _________________ Дата:________, Оценка:__________ |
Челябинск-2019
Министерство науки и высшего образования Российской Федерации
Южно-Уральский государственный университет
Кафедра системного программирования
УТВЕРЖДАЮ
Зав. кафедрой
системного программирования
_____________ Л.Б. Соколинский
ЗАДАНИЕ
по учебной практике
- Цель работы
Необходимо разработать распознаватель заданной символьной цепочки. Символьная цепочка задается с помощью формул Бэкуса-Наура.
- Исходные данные к работе
- Йенсен К., Вирт Н. Паскаль. Руководство пользователя и описание языка. М.: Компьютер, 1995.
- Льюис Ф., Розенкранц Д., Стирнз Р. Теоретические основы проектирования компиляторов. М.: Мир, 1979.
- Перечень подлежащих разработке вопросов
- Выполнить анализ требований и разработать спецификации программы.
- Провести проектирование программы.
- Реализовать спроектированные модули.
- Провести тестирование и отладку реализованных модулей.
- Сроки
Дата выдачи задания: "02" июля 2019 г.
Срок сдачи законченной работы: "28" июля 2019 г.
Руководитель:
Ст. преподаватель кафедры СП
Р.С.Федянина _____________ Федянина Р.С.
должность, ученая степень подпись ФИО руководителя
Задание принял к исполнению:
_____________ Потапов Д.В.
подпись ФИО студента
ОГЛАВЛЕНИЕ
1. Спецификация 4
2. Проектирование 5
2.1. Модульная структура 5
2.2. Интерфейсы модулей 6
3. Кодирование 11
3.1. Структура текста программы 11
3.2. Алгоритмы реализации модулей 11
3.2.1. Блок транслитерации 11
3.2.2. Лексический блок 12
3.2.3. Блок идентификации ключевых слов 29
3.2.4. Синтаксический блок 29
3.3. Размер текста программы (в строках) 33
4. Тестирование 33
4.1. Автономное тестирование 33
4.2. Комплексное тестирование 36
Заключение 37
Литература 37
Спецификация
Необходимо разработать распознаватель заданной символьной цепочки. Символьная цепочка задается с помощью формул Бэкуса-Наура.
Цепочка ::=<оператор if-then>
<оператор if-then>::=IF<условие> THEN<оператор1> ;
<условие>::=<вызов подпрограммы>
< вызов подпрограммы >::=<идентификатор> (<список параметров>)
<идентификатор>::=<буква> |<идентификатор><буква> |<идентификатор><цифра>
<буква>::=A | B | C | D | E | F | ... | Z
<цифра>::=0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
<список параметров>::=<арифметическая операция>
<арифметическая операция>::=<слагаемое1><знак арифметической операции><слагаемое2>
<слагаемое1>::=<целая константа>
<знак арифметической операции>::=+ | - | * | div | mod
<слагаемое2>::=<идентификатор>
...