Порядок выполнения работы.
1.1. Создать Windows-приложение со следующими функциями:
1.1.1. чтение и запись текстового файла с меню, панелью инструментов;
1.1.2. разбиение текста на отдельные слова и символы и вывод их в файла;
1.1.2.1. замена слов на русском языке переводом на иностранный.
1.1.3. выделение лексем, вывод их в файла;
1.1.4. создание таблицы, номера строк, содержащей лексемы, их классы, вывод этой таблицы в файл;
1.1.5. выполнить п.1.1.3-4 для оператора присваивания для оператора присваивания при условии, что <Идент>::= <Буква> (идентификатор состоит из одной буквы) <Const>::= <Цифра> (Const состоит из одной цифры).
1.1.6. выполнить п.1.1.3-4 для оператора присваивания для оператора присваивания при условии, что идентификатор состоит более, чем из одной буквы и Const состоит более, чем из одной цифры.
1.1.7. выполнить п.1.1.3-4 для реализуемого языка, согласно своего варианта.
1.2. Ознакомиться с разделом 5 пособия [1] и выделить в отчет определения следующих понятий:
1.2.1.1. номер строки исходного текста транслируемой программы,
|
|
1.2.1.2. лексема,
1.2.1.3. классы лексем,
1.2.1.4. признаки классов лексем,
1.2.1.5. таблица, содержащая лексемы,
1.2.1.6. форма Бэкуса–Наура (БНФ).
1.3. По варианту задания определить, какие классы лексем будут в вашем языке.
1.4. Составить контрольные примеры на реализуемом языке. Хотя бы один пример должен проверять поведение вашей программы при наличии недопустимых символов в транслируемом файле.
1.5. Запрограммировать и отладить модуль сканирования. Выполнить тестирование на контрольных примерах. Результатом работы должна быть таблица, содержащая лексемы и признаки их классов. Необходимо включить в результирующий файл информацию о номерах строк исходного текста транслируемой программы.
1.6. Оформить отчет.
Содержание отчета.
2.1. Название работы и ее исполнители.
2.2. Цель работы.
2.3. БНФ реализуемого языка.
2.4. Список классов лексем реализуемого языка.
2.5. Описание грамматики реализуемого языка, используя общие обозначения нетерминалов и терминалов.
2.6. Краткое (по 2-3 предложения) описание процедур (функций), из которых состоит программа лексического анализа. Лучший вариант – включение описаний в текст программы в виде комментариев.
2.7. Листинг программы.
2.8. Распечатки контрольных примеров и результатов их выполнения.
2.9. Выводы по проделанной работе.
Лабораторная работа № 1.