- •Выпускная квалификационная работа бакалавра
- •Задание на выпускную квалификационную работу бакалавра
- •План-график выполнения работы
- •Реферат
- •Введение
- •1 Языковые процессоры
- •1.1 Практическое применениеискусственных языков
- •1.2 Практический пример
- •1.3 Понятие и структура языкового процессора
- •2Обзор существующих систем и обоснование выбора инструментальных средств и класса грамматики
- •2.1 Обзор существующей символьной спецификации моделей гс в среде исма
- •2.1.1 Лексемы языка исма
- •2.1.2 Грамматика языка исма
- •2.1.3 Семантические действия в языковом процессоре исма
- •2.1.4 Заключение
- •2.2 Обоснование выбора инструментальных средств и класса грамматики
- •3 Постановка задачи исследования
- •3.1 Характеристика задачи исследования
- •3.2 Входная информация
- •3.3 Выходная информация
- •3.4 Архитектура среды исма с расширенным языком описания гс
- •4 Программно-математическое обеспечение
- •4.1Лексический анализатор
- •4.1.1 Функции лексического анализатора
- •4.1.2 Спецификация токенови входного алфавита символов
- •4.1.3 Распознавание токенов
- •4.1.4 Иерархия классов модуля
- •4.2 Синтаксический анализатор
- •4.2.1 Функции синтаксического анализатора
- •4.2.2 Спецификация грамматики
- •4.2.3 Метод разбора
- •4.2.4 Восстановление после ошибок
- •4.2.5 Иерархия классов модуля
- •4.3 Семантический анализ
- •4.3.1 Промежуточное представление программы
- •4.3.2 Грамматика с семантическими правилами
- •4.3.3 Модифицированныйметодразбора
- •4.3.4 Семантический анализ. Таблица символов
- •4.3.5 Семантический анализ. Проверка корректности типа
- •4.4 Генерация кода
- •4.5 Система сбора диагностических сообщений
- •5 Тестирование
- •5.1 Лексический анализатор
- •5.2 Синтаксическийанализатор
- •5.3 Семантический анализатор
- •Заключение
- •Список использованных источников
- •ПриложениеA Диагностические сообщения
- •Диагностические сообщения сканера
- •Диагностические сообщения парсера
- •Диагностические сообщения семантического анализатора
- •ПриложениеБ
- •Б.1.3 Установка системы
- •Б.2 Работа с системой б.2.1 Запуск системы и начало работы
- •Б.2.2Ввод программной модели
- •Б.2.3Трансляция модели и просмотр результата
- •Б.2.4Сохранение программной модели
- •Б.2.6Завершение работы с системой
- •Приложение в
- •Листинг программы
- •В.1 Модуль лексического анализатора
- •Файл abstractLexer.H
- •Файл lexer.H
- •Файл lexer.Cpp
- •В.2 Модуль синтаксического анализатора Файл abstractParser.H
- •Файлparser_ll1.H
- •Файл parser_ll1.Cpp
- •В.3 Модуль семантического анализатора Файл symbolTable.H
- •Файл SymbolTableFactory.H
- •Файл checker.H
- •В.4 Модулькодогенератора ФайлastVisitor.H
- •Файл astCodeGen.H
ПриложениеБ
Руководство пользователя
Б.1 Общие сведения о системе
Б.1.1 Назначение системы
Программа TranslatorLISMA+ предназначена для перевода программной модели, написанной на расширенном языке ИСМА, в модель, написанную в старом формате. ТакжеTranslatorLISMA+проверяет корректность введённой модели и в случае ошибки выводит диагностическое сообщение.
Б.1.2 Условия применения
Для работы системы конфигурация компьютера должна удовлетворять следующим требованиям.
1) Процессор класса Pentium с тактовой частотой от 1 ГГц.
2) Объем оперативной памяти от 128 Мб.
3) Не менее 15 Мб свободного места на жестком диске.
На компьютере должно быть установлено следующее программное обеспечение.
1)Одна из операционных систем:Microsoft Windows,системклассаUNIXс графической подсистемойX11или Mac OS X.
2) БиблиотекаQt динамической или статической компановки (файлы QtCore4, QtGui4).
Б.1.3 Установка системы
Дляустановкисистемы достаточно скопировать файл TranslatorLISMA+.exe в рабочую директорию и при необходимости создать ярлык для него. Если на компьютере не установлена библиотека Qt, потребуются также файлыQtCore4.dll, QtGui4.dll.
Б.2 Работа с системой б.2.1 Запуск системы и начало работы
Запуск системы выполняется путем активации исполняемого файла TranslatorLISMA+.exe. После запуска приложения пользователю доступно главное окно, представленное на рисунке Б.1.
Рисунок Б.1 – Главное окно системы
Главное окно
представляет обыкновенный текстовый
редактор, заисключением того, что снизу
имеется окно для вывода диагностических
сообщений и функция запуска процесса
трансляции. Для работы необходимо
создать или открыть ранее созданный
файл. Создание файла выполняется командой
"File->New"
(или кнопка
на панели инструментов, или сочетание
клавиш Ctrl+N).
При этом откроется новое окно редактора.
Открытие файла
выполняется командой "File->Open"
(кнопка
на панели инструментов, или сочетание
клавиш Ctrl+O).
При этом вызывается стандартное окно
открытия файла, представленное на
рисунке Б.2.
Если будет введено имя несуществующего файла, система выдаст сообщение (рисунок Б.3).
Если файл существует, то его содержимое отображается в окне.
Рисунок Б.2 – Диалог открытия файла
Рисунок Б.3 – Сообщение при выборе несуществующего файла
Б.2.2Ввод программной модели
Пользователь может редактировать текст как в обычном редакторе, пользуясь функциями вставки, копирования, возврата действия и др. В нижнем правом угле отображаются координаты курсива.Введённая модель в окне редактора представлена на рисунке Б.4.
Рисунок Б.4 – Вид окна редакторас введённой моделью
Б.2.3Трансляция модели и просмотр результата
Для запуска процесса трансляции выполняется команда "Task->RunCompile" (или кнопка RunCompille на панели инструментов или сочетание клавишCtrl+R). После выполнения трансляции выходная модель будет записана в файле out.txt и откроется окно с этим файлом (рисунок Б.5).
В случае обнаружения ошибки в окне диагностик вместо сообщения “Successfullycompleted” будут выведены диагностически сообщения (рисунок Б.6).
Рисунок Б.5 – Результаты трансляции
Рисунок Б.6 – Главное окно в случае обаружения ошибки
