книга DipMaster-Shop.RU
поиск
карта
почта
Главная На заказ Готовые работы Способы оплаты Партнерство Контакты F.A.Q. Поиск
ОТЧЕТ ПО КУРСОВОЙ РАБОТЕ ПО ДИСЦИПЛИНЕ "ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ Python" ИГРА "Kill the Beaver" ( Контрольная работа, 9 стр. )
Отчет по курсовой работе по дисциплине "Системное Программное Обеспечение" на тему "Однопроходный/двухпроходный транслятор с языка математических выражений на язык деревьев вывода. Интерпретатор языка деревьев вывода." ( Курсовая работа, 51 стр. )
Отчет по лабораторной работе Дисциплина: "Теория информации и кодирование" Тема: "Код Хэмминга в матричном виде" ( Контрольная работа, 9 стр. )
Отчет по практике ООО "Пермтрансгаз". ( Отчет по практике, 35 стр. )
Отчёт к лабораторной работе по дисциплине: "Основы теории информации и кодирования" ( Контрольная работа, 13 стр. )
ОТЧЁТ О ЛАБОРАТОРНОЙ РАБОТЕ по дисциплине "Методы и средства анализа данных" по теме: "Лабораторная работа с системой анализа данных Weka" ( Курсовая работа, 29 стр. )
Оценка шумов третьего и пятого канала полярно - орбитального спутника FY – 1D ( Курсовая работа, 18 стр. )
ПАРАЛЛЕЛЬНЫЕ АЛГОРИТМЫ ПРОСТРАНСТВЕННОГО МОДЕЛИРОВАНИЯ ГЕОХИМИЧЕСКИХ ПОЛЕЙ ( Курсовая работа, 12 стр. )
Перевести число, записанное римскими цифрами (для их записи используются латинские буквы 1-I, 5-V, X-10, L-50, C-100, D-500, V-1000), в его десятичное представление 2010-12 ( Контрольная работа, 12 стр. )
Перевести число, записанное римскими цифрами (для их записи используются латинские буквы 1-I, 5-V, X-10, L-50, C-100, D-500, V-1000), в его десятичное представление ( Контрольная работа, 12 стр. )
Персональная графическая операционная система MS Windows ( Контрольная работа, 17 стр. )
Поиск заданного фрагмента на графе ( Контрольная работа, 21 стр. )
Поиск корней кубического уравнения вида x^3 + ax^2 + bx + c = 0 ( Контрольная работа, 22 стр. )
Поиск минимального множества сечений контуров обратной связи произвольного графа с помощью структурно-матричного анализа ( Курсовая работа, 10 стр. )
Поиск перемещенных строк при сравнении текстовых файлов ( Курсовая работа, 6 стр. )
Поиск с использованием онтологий предметных областей ( Курсовая работа, 57 стр. )
Поиск сходных алгоритмических конструкций в программном коде Модуль системы автоматического тестирования CATS ( Курсовая работа, 18 стр. )
Полнотекстовый поиск для системы Aworks ( Курсовая работа, 22 стр. )
Полноценная система электронного документооборота "ДокМенеджер" для Государственного учреждения "294 ЦСООР" ( Дипломная работа, 167 стр. )
Понятие алгоритма. Определение и типовая схема циклического алгоритма. Назначение блоков циклического алгоритма. Виды циклических алгоритмов ( Контрольная работа, 14 стр. )
Постановка задачи: Организовать ввод и вывод данных заданных типов, снабдив распечатки соответствующими заголовками ( Контрольная работа, 15 стр. )
Пошаговая распределенная игра ( Курсовая работа, 22 стр. )
Пояснительная записка к курсовой работе (по дисциплине "Базы данных") на тему: Проектирование и реализация базы данных для Видеогалереи на основе единой информационной среды кафедры ( Реферат, 16 стр. )
Пояснительная записка к курсовой работе по дисциплине "Системное программное обеспечение" "Разработка в Borland C++ Builder клиент-серверного обеспечения" "База данных газет" ( Контрольная работа, 8 стр. )
Пояснительная записка к курсовой работе по дисциплине "Теория автоматов" ( Реферат, 24 стр. )

Аннотация 3

Теоретическое введение 3

Формальные грамматики 3

Формальное определение грамматики. Форма Бэкуса-Наура 3

Принцип рекурсии в правилах грамматики 4

Задача разбора 5

Виды рекурсий и разбора 6

Классификация языков и грамматик 6

Классификация грамматик по Хомскому 6

Тип 0: грамматики с фразовой структурой 6

Тип 1: контекстно-зависимые (КЗ) и неукорачивающие грамматики 6

Тип 2: контекстно-свободные (КС) грамматики 7

Тип 3: регулярные грамматики 7

Соотношения между типами грамматик 7

Трансляторы 8

Формальное определение транслятора 8

Этапы трансляции. Общая схема работы транслятора 8

Интерпретаторы 10

Lex и Yacc 11

Обзор генераторов кода 11

Совместное использование Lex и Yacc. 11

Lex 13

Theory 13

Practice. 15

Реализация lex в Unix 18

YACC- Yet Another Compiler Compiler 19

Структура YACC-программы 20

Семантические действия 21

Лексический анализ 22

Реализация Yacc в Unix 24

YACC(1) 24

Постановка задачи 26

Транслятор 26

Грамматика синтаксического анализатора 26

Исходная грамматика 26

Эквивалентная грамматика без левой рекурсии 26

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

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

Взаимодействие анализаторов 27

Оптимизатор 27

Алгоритм оптимизации 27

Пример оптимизации 28

Интерпретатор 30

Заключение 30

Приложения 31

Analyser.h 31

Analyser.cpp 35

error.h (структуры исключений и перечисления ошибок) 48

transl.cpp (транслятор) 49

interpret.cpp (интерпретатор) 50

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

Аннотация

Цель данной курсовой работы:

- изучение принципов построения трансляторов

- написание на языке C++ класса, реализующего следующие действия над математическими выражениями:

- лексический анализ

- синтаксический анализ

- вычисление значения

- написание транслятора с языка математических выражений на язык деревьев вывода

- написание интерпретатора языка деревьев вывода

Теоретическое введение

Теория построения трансляторов используется во многих областях, связанных с программным обеспечением. Важность этой темы можно проиллюстрировать на примере языка высокого уровня C++: для разработки программы на C++ требуется гораздо меньше времени, чем на языках более низкого уровня.

" А. Ахо, Р. Сети, Д. Ульман: "Компиляторы. Принципы, технологии, инструменты"

" А. Ю. Молчанов: "Системное программное обеспечение"

" A COMPACT GUIDE TO LEX & YACC by Tom Niemann

Примечаний нет.

2000-2024 © Copyright «DipMaster-Shop.ru»