Пояснительная записка к курсовой работе по дисциплине «Теория языков программирования и методов трансляции»




НазваниеПояснительная записка к курсовой работе по дисциплине «Теория языков программирования и методов трансляции»
страница1/15
Дата публикации08.05.2013
Размер1.12 Mb.
ТипПояснительная записка
www.vbibl.ru > Информатика > Пояснительная записка
  1   2   3   4   5   6   7   8   9   ...   15


Санкт-Петербургский Государственный Электротехнический Университет «ЛЭТИ»

Пояснительная записка

к курсовой работе по дисциплине

«Теория языков программирования и методов трансляции».


Проверила: Опалёва Э.А.

Выполнили: Зубарев П.С.

Татаренкова Е.А.

гр.3305





Санкт-Петербург, 2006
Содержание


1 Формальная постановка задачи 3

2 Описание входного языка 4

2.1. Синтаксис входного языка 4

2.2. Семантика входного языка 5

2.2.1.Встроенные типы данных входного языка 5

2.2.2.Операции входного языка и их приоритет 5

2.2.3.Конструкции входного языка 5

3 Описание этапа лексического анализа 7

3.1 Описание типов лексем 7

3.2 Функции лексического анализатора 12

3.3 Тестирование лексического анализатора 12

4 Описание этапа синтаксического анализа 15

4.1 Исходная порождающая КС-грамматика 15

4.2 Разбиение исходной грамматики на подграмматики 17

4.3. Разработка ДМП-процессора, порожденного исходной грамматикой 20

4.3.1 Алгоритм разбора для LL(1)-грамматик 20

4.3.2 Взаимодействие ДМП-процессоров 21

4.3.3 Алгоритм работы ДМП-процессора 21

4.3.4 Управляющие таблицы ДМП-процессоров 23

4.3. Описание перевода во внутренний язык 33

4.3.1 Формат тетрады 33

4.3.2 Формат тетрад для представления основных операторов 33

4.3.3 Представление основных операторов(описанных в разделе семантики) с помощью тетрад 34

4.4.4 Взаимодействие АТГ с имеющимися таблицами лексического анализатора 35

4.4.5 Разработка атрибутной транслирующей грамматики 36

4.4.6 Описание используемых операционных символов 42

4.4.7 Атрибутный перевод для LL(1)-грамматик 43

4.4.8 Атрибутный ДМП-процессор 44

4.4.9 Тестовый пример 46

Выводы 49

Список литературы 49

Приложение 1 Тестирование ДМП-процессора 51
^

1 Формальная постановка задачи


Базовый язык – Си.

Базовые типы: целый, вещественный, булевский.

Структурированный тип – вектор с вещественными компонентами.

Операции над векторами: определение длины вектора, сумма и разность векторов, Скалярное произведение векторов, умножение вектора на число.

Дополнительные требования: операции ++, --, условный оператор присваивания, операторы присваивания +=, *=, -=, /=.

Оператор цикла – с параметром.

Перегрузка операций – разрешается.

Эквивалентность типов – структурная.

Класс грамматик – LL(1)-грамматики.

Промежуточный язык – тетрады.

В процессе выполнения курсовой работы необходимо разработать язык программирования, являющийся подмножеством заданного языка, и транслятор с этого языка в промежуточный язык, тип которого определяется вариантом индивидуального задания. Метод синтаксического анализа также определяется заданием.
Язык должен обеспечивать операции над переменными и константами заданных базовых типов, а также над переменными и компонентами производного типа, которые определяются вариантом задания. Состав операций должен включать как предусмотренные базовым языком, так и перечисленные в варианте задания. В языке должна быть определена операция преобразования типов при структурной или именной эквивалентности типов. В языке должна быть предусмотрена возможность создания пользовательских типов.
Язык должен допускать использование арифметических выражений, в состав которых могут входить константы и простые переменные базовых типов, компоненты производного типа, круглые скобки и знаки операций: сложение, вычитание, умножение и деление. Приоритет операций - обычный.
Язык должен допускать использование логических выражений, в состав которых могут входить отношения, круглые скобки и знаки логических операций: И, ИЛИ, НЕ и, в случае наличия в языке логического типа, константы и переменные этого типа. Приоритет операций - обычный.

Операции над переменными производного типа определяется вариантом задания.
Состав операторов языка:
- оператор присваивания;
- оператор ввода;
- оператор вывода;
- составной оператор;
- оператор безусловного перехода;
- условный оператор, условие в котором задается логическим выражением;
- оператор цикла, условие в котором задается логическим выражением.


Конкретный вид операторов определяется вариантом задания. Программа на входном языке комментариев не содержит.

  1   2   3   4   5   6   7   8   9   ...   15

Добавить документ в свой блог или на сайт

Похожие:

Пояснительная записка к курсовой работе по дисциплине «Теория языков программирования и методов трансляции» iconПояснительная записка к курсовой работе по курсу «Теория языков программирования...
Язык программирования — формальная знаковая система, предназначенная для записи компьютерных программ. Язык программирования определяет...

Пояснительная записка к курсовой работе по дисциплине «Теория языков программирования и методов трансляции» iconПояснительная записка к курсовой работе по курсу «Теория языков программирования...
В тоже время ни одна программа написанная на яп не может быть непосредственно выполнена машиной – перед этим необходимо выполнить...

Пояснительная записка к курсовой работе по дисциплине «Теория языков программирования и методов трансляции» iconПояснительная записка к курсовой работе по дисциплине «Интеллектуальные подсистемы сапр»
Пояснительная записка к курсовой работе 10 страниц, 2 рисунка, 1 таблица, 3 источника

Пояснительная записка к курсовой работе по дисциплине «Теория языков программирования и методов трансляции» iconПояснительная записка к курсовой работе по дисциплине «технологии программирования»
Государственного образовательного учреждения высшего профессионального образования Российский химико-технологический университет

Пояснительная записка к курсовой работе по дисциплине «Теория языков программирования и методов трансляции» iconПояснительная записка к курсовой работе по дисциплине «Алгоритмизация...
Сеть книжных магазинов. – Челябинск: юурГУ, ЭиП-208, 2012. – 50 с., 13 ил., 1 прил

Пояснительная записка к курсовой работе по дисциплине «Теория языков программирования и методов трансляции» iconПояснительная записка к курсовой работе по дисциплине «Теория электрической связи»
Целью курсовой работы является получение навыков по вычислению параметров системы связи, анализу полученных результатов, а также...

Пояснительная записка к курсовой работе по дисциплине «Теория языков программирования и методов трансляции» iconМетодические указания к курсовой работе по дисциплине " системы программирования " Киев -2002
Целью курсовой работы по дисциплине "Системы программирования" является закрепление теоретического материала и приобретение практических...

Пояснительная записка к курсовой работе по дисциплине «Теория языков программирования и методов трансляции» iconПояснительная записка к курсовой работе по дисциплине «Теория автоматов»
Курсовая работа по теории автоматов выполняется с целью закрепления ранее полученных знаний, приобретения навыков и умений самостоятельного...

Пояснительная записка к курсовой работе по дисциплине «Теория языков программирования и методов трансляции» iconПояснительная записка к курсовой работе по дисциплине «Теория автоматов»
Ученик может исправить полученную оценку. Завуч может добавить информацию о новом учителе или ученике, а также удалить о выбывших....

Пояснительная записка к курсовой работе по дисциплине «Теория языков программирования и методов трансляции» iconПояснительная записка к курсовой работе по дисциплине «Автоматические...
Расчет допускаемой тормозной силы из условия безъюзного торможения подвижного состава

Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
www.vbibl.ru
Главная страница