double arrow

РАЗРАБОТКА ЛЕКСИЧЕСКОГО АНАЛИЗАТОРА


Порядок выполнения работы.

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.


Сейчас читают про: