Правила составления литералов и идентификаторов 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Правила составления литералов и идентификаторов



Варианты 1 – 19

Содержание пояснительной записки

Титульный лист

Бланк задания

Аннотация

1-2 абзаца. Что находится в пояснительной записке, что делает программа. На скольких страницах ПЗ изложена, сколько рисунков/таблиц/приложений содержит, список литературы состоит из скольких источников

лист Содержание

Введение

назначение разрабатываемой программы, общие принципы построения трансляторов и состав программы-транслятора по блокам.

Глава 1. Описание языка

Алфавит

Список символов, которые допускается использовать в тексте программы.

Правила составления литералов и идентификаторов

Допустимые символы, из которых могут состоять идентификаторы, правила из составления, ограничения на максимальную длину имен. Типы литералов (числовые, символьные, строковые), правила их составления, ограничения на длину. Список служебных слов языка, которые не могут быть использованы в качестве идентификаторов.

Грамматические конструкции

Приводится КС-грамматика для описания конструкций языка, анализ ее однозначности, при необходимости приведение ее к стандартному виду LL(k) или LR(k). Преобразование грамматики к транслирующей (добавление семантических действий в продукции). Можно привести примеры, доказывающие применимость разработанной грамматики для трансляции заданных типов выражений). Приводятся правила записи комментариев.

 

Глава 2. Разработка транслятора

Лексический анализатор

Разбиение лексем по классам, формат таблиц лексем. Алгорим работы лексического анализатора. Если лексический анализатор работает по принципу конечного автомата – привести граф состояний автомата; если работает по принципу прямого поиска – привести структуру таблиц и описание алгоритма поиска. Перечень ошибок, обнаруживаемых на этапе лексического анализа и перечень диагностических сообщений.

Синтаксический анализатор

Описание выбранного метода разбора (нисходящий или восходящий). Способ программной организации МП-автомата (если используется). Структуры данных и алгоритмы синтаксического разбора, формат хранения синтаксического дерева программы (если такое имеется). Перечень ошибок, обнаруживаемых на этапе синтаксического анализа и перечень диагностических сообщений.

Семантический анализатор

Перечень семантических проверок и этапы, на которых они выполняются. Список семантических ошибок и диагностических сообщений.

Интерпретация

Структуры данных и алгоритмы части транслятора, ответственных за интерпретацию синтаксического дерева.

Глава 3. Тестовый пример.

Текст тестовых примеров (2-5 штук) и результаты работы программы. Также привести тестовые примеры с ошибкой и показать отработку транслятором ошибочных ситуаций.

 

Заключение.

(0,5 – 1 стр.) В утвердительной форме говорится, что мы разработали, мы сделали…

Список используемой литературы

Приложения. В приложения можно выносить громоздкие граф-схемы, листинг программы-транслятора, тексты текстовых примеров (вместо главы 3).

Варианты 20 – 35 Ассемблер

Задание: разработать кросс-компилятор с языка ассемблера  однокристальной микроЭВМ (ОМЭВМ).

Кросс-компилятор получает имя текстового файла, содержащего текст программы на языке ассемблере выбранной ОМЭВМ. Если программа не содержит ошибок, кросс-компилятор формируется выходной бинарный файл с машинными кодами. Бинарный файл представляет собой образ ПЗУ для последующей «прошивки» в ОМЭВМ. Если текстовый файл содержит ошибки, выводить диагностическое сообщение, а бинарный файл не создавать.

 

Пояснения: индивидуальным вариантом определяется тип однокристальной микроЭВМ. Система команд ОМЭВМ в зависимости от ее модели включает от 20 до 150 машинных команд. С целью упрощения работы в кросс-ассемблере разрешается реализовывать не всю систему команд ОМЭВМ, а только часть. Для этого следует выбрать не менее 20 команд из разных групп.  

Если судить здраво, то такой кросс-компилятор не имеет практического смысла, но цель курсовой работы – научиться разрабатывать компиляторы, а не создавать коммерческий продукт.

 

Содержание пояснительной записки

Титульный лист

Бланк задания

Аннотация

1-2 абзаца. Что находится в пояснительной записке, что делает программа. На скольких страницах ПЗ изложена, сколько рисунков/таблиц/приложений содержит, список литературы состоит из скольких источников

лист Содержание

Введение

2-3 страницы. Цель разработки. Составные части и этапы работы разработанного кросс-компилятора.

Глава 1. Описание однокристальной микроЭВМ название_вашей_однокристалки

Программная модель

Список регистров процессора с указанием их разрядности и кратко- назначения. Внутренний формат регистров имеет смысл раскрывать только если к отдельным битам этих регистров можно обратиться программно по имени.

Подсистема памяти

Описывается архитектура ОМЭВМ (Фон-Неймановская или гарвардская), типы памяти и объем памяти каждого типа (внутренняя память, внешняя память, расширенная память, регистровые банки, битовые массивы). Если используется оторажение регистров на память, привести карту отображения.

Алфавит языка

Список символов, которые допускается использовать в тексте программы на ассемблере.

Синтаксис языка

Правила составления языковых конструкций с комментариями по семантике языка.

Лексический анализатор

Разбиение лексем по классам, формат таблиц лексем, алгоритм работы лексического анализатора (блок-схему можно не чертить, а кратко на словах. Если лексический анализатор работает по принципу конечного автомата – привести граф состояний автомата; если работает по принципу прямого поиска и перебора – привести описание алгоритма поиска. Перечень ошибок, обнаруживаемых на этапе лексического анализа и перечень диагностических сообщений.

Синтаксический анализатор

Структуры данных и алгоритмы синтаксического разбора, формат хранения синтаксического дерева программы (если такое имеется). Типы семантических проверок. Перечень ошибок, обнаруживаемых на этапе синтаксического и семантического анализа и перечень диагностических сообщений.

Генератор кода

Структуры данных и алгоритмы для формирования машинных кодов Перечень ошибок, возникающих на этапе генерации кода.

Глава 4. Тестовый пример.

Заключение.

(0,5 – 1 стр.) В утвердительной форме говорится, что мы разработали, мы сделали…

Список используемой литературы

Приложения. В приложения можно выносить кодирование опкодов, громоздкие граф-схемы, листинг кросс-ассемблера.

Варианты 20 – 35   Дизассемблер

Задание: разработать дизассемблер для однокристальной микроЭВМ (ОМЭВМ).

Дизассемблер получает имя бинарного файла, содержащего машинные коды ОМЭВМ. Формат этого файла соответствует образу ПЗУ ОМЭВМ. На выходе дизассемблер формирует текстовый файл с мнемониками команд, эквивалентных машинным кодам. Если бинарный файл содержит неизвестный машинный код или имеет недопустимый размер, выводить сообщение об ошибке.

 

Пояснения: индивидуальным вариантом определяется тип однокристальной микроЭВМ. Дизассемблер должен включать всю систему команд ОМЭВМ.

 

Содержание пояснительной записки

Аннотация

1-2 абзаца. Что находится в пояснительной записке, что делает программа. На скольких страницах ПЗ изложена, сколько рисунков/таблиц/приложений содержит, список литературы состоит из скольких источников

Введение

2-3 страницы. Цель разработки. Составные части и этапы работы дизассемблера.

Глава 1. Описание однокристальной микроЭВМ название_вышей_однокристалки

Программная модель

Список регистров процессора с указанием их разрядности и кратко-назначения. Внутренний формат регистров имеет смысл раскрывать только если к отдельным битам этих регистров можно обратиться программно по имени.

Подсистема памяти

Описывается архитектура ОМЭВМ (Фон-Неймановская или гарвардская), типы памяти и объем памяти каждого типа (внутренняя память, внешняя память, расширенная память, регистровые банки, битовые массивы). Если используется оторажение регистров на память, привести карту отображения.

Синтаксис языка

Правила формирования выходных языковых конструкций.

 

Этапы работы дизассемблера

Описываются структура программы, назначение ее составных частей и взаимодействия между ними.

Анализ кодов

Структуры данных и алгоритмы для анализа машинных кодов и формирования текста программы.

Обработка ошибок.

Список ошибок и реакция дизассемблера на них.

Глава 4. Тестовый пример.

Таблица машинных кодов (в HEX-формате) и выходной текст программы.

 

Заключение.

(0,5 – 1 стр.) В утвердительной форме говорится, что мы разработали, мы сделали…

Список используемой литературы

Приложения. В приложения можно выносить кодирование опкодов, громоздкие граф-схемы, листинг дизассемблера.

Варианты 1 – 19

Содержание пояснительной записки

Титульный лист

Бланк задания

Аннотация

1-2 абзаца. Что находится в пояснительной записке, что делает программа. На скольких страницах ПЗ изложена, сколько рисунков/таблиц/приложений содержит, список литературы состоит из скольких источников

лист Содержание

Введение

назначение разрабатываемой программы, общие принципы построения трансляторов и состав программы-транслятора по блокам.

Глава 1. Описание языка

Алфавит

Список символов, которые допускается использовать в тексте программы.

Правила составления литералов и идентификаторов

Допустимые символы, из которых могут состоять идентификаторы, правила из составления, ограничения на максимальную длину имен. Типы литералов (числовые, символьные, строковые), правила их составления, ограничения на длину. Список служебных слов языка, которые не могут быть использованы в качестве идентификаторов.

Грамматические конструкции

Приводится КС-грамматика для описания конструкций языка, анализ ее однозначности, при необходимости приведение ее к стандартному виду LL(k) или LR(k). Преобразование грамматики к транслирующей (добавление семантических действий в продукции). Можно привести примеры, доказывающие применимость разработанной грамматики для трансляции заданных типов выражений). Приводятся правила записи комментариев.

 



Поделиться:


Последнее изменение этой страницы: 2019-08-19; просмотров: 89; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.222.115.120 (0.016 с.)