Однопроходный/двухпроходный транслятор с языка математических выражений на язык деревьев вывода
Состав работы
|
|
|
|
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
Цель данной курсовой работы:
– изучение принципов построения трансляторов
– написание на языке C++ класса, реализующего следующие действия над математическими выражениями:
– лексический анализ
– синтаксический анализ
– вычисление значения
– написание транслятора с языка математических выражений на язык деревьев вывода
– написание интерпретатора языка деревьев вывода
Теоретическое введение
Теория построения трансляторов используется во многих областях, связанных с программным обеспечением. Важность этой темы можно проиллюстрировать на примере языка высокого уровня C++: для разработки программы на C++ требуется гораздо меньше времени, чем на языках более низкого уровня.
Формальные грамматики
Формальное определение грамматики. Форма Бэкуса–Наура
Грамматика – это описание способа построения предложений некоторого языка. Иными словами, грамматика – это математическая система, определяющая язык. Фактически, определив грамматику языка, мы указываем правила порождения цепочек символов, принадлежащих этому языку. Таким образом, грамматика – это генератор цепочек языка.
Правило (или продукция) – это упорядоченная пара цепочек символов (α, β). В правилах важен порядок цепочек, поэтому их чаще записывают в виде α → β (или α::= β). Такая запись читается как «α порождает β» или «β по определению есть α».
Грамматика языка программирования содержит правила двух типов: первые (определяющие синтаксические конструкции языка) довольно легко поддаются формальному описанию; вторые (определяющие семантические ограничения языка) обычно излагаются в неформальной форме. Поэтому любое описание (или стандарт) языка программирования обычно состоит из двух частей: вначале формально излагаются правила построения синтаксических конструкций, а потом на естественном языке дается описание семантических правил.
– изучение принципов построения трансляторов
– написание на языке C++ класса, реализующего следующие действия над математическими выражениями:
– лексический анализ
– синтаксический анализ
– вычисление значения
– написание транслятора с языка математических выражений на язык деревьев вывода
– написание интерпретатора языка деревьев вывода
Теоретическое введение
Теория построения трансляторов используется во многих областях, связанных с программным обеспечением. Важность этой темы можно проиллюстрировать на примере языка высокого уровня C++: для разработки программы на C++ требуется гораздо меньше времени, чем на языках более низкого уровня.
Формальные грамматики
Формальное определение грамматики. Форма Бэкуса–Наура
Грамматика – это описание способа построения предложений некоторого языка. Иными словами, грамматика – это математическая система, определяющая язык. Фактически, определив грамматику языка, мы указываем правила порождения цепочек символов, принадлежащих этому языку. Таким образом, грамматика – это генератор цепочек языка.
Правило (или продукция) – это упорядоченная пара цепочек символов (α, β). В правилах важен порядок цепочек, поэтому их чаще записывают в виде α → β (или α::= β). Такая запись читается как «α порождает β» или «β по определению есть α».
Грамматика языка программирования содержит правила двух типов: первые (определяющие синтаксические конструкции языка) довольно легко поддаются формальному описанию; вторые (определяющие семантические ограничения языка) обычно излагаются в неформальной форме. Поэтому любое описание (или стандарт) языка программирования обычно состоит из двух частей: вначале формально излагаются правила построения синтаксических конструкций, а потом на естественном языке дается описание семантических правил.
Другие работы
Организация производства на предприятиях электросвязи
lao777
: 22 декабря 2010
Экзаменационная работа по дисциплине
«Организация производства на предприятиях электросвязи»
Вопросы:
Понятие первичной сети связи
Классификация вторичных сетей
Организационно-производственная структура ТЦМС
Сравнение способов установления междугородных соединений
Расчет каналов и пропускной способности на МТС при ЗСО, НСО и ССО
Состав и назначение станционного цеха ГТС
Способы построения ГТС
Структура и функции линейного цеха ГТС
Методы расчета численности работников ГТС
Способы построения СТС
Программирование. Экзамен. Билет №4
jaggy
: 12 февраля 2016
Программирование. Экзамен
Билет 4
1. Структурированный тип данных: массив.
2. Язык программирования Pascal. Подпрограммы. Формальные и фактические параметры процедур и функций. Передача параметров по значению и по ссылке (параметры-переменные, параметры-значения).
300 руб.
МИ 2153-2001 ГСИ. Плотность нефти. Требования к методике выполнения измерений ареометром при учетных операциях
evelin
: 7 мая 2013
Настоящая рекомендация устанавливает требования к методике выполнения измерений плотности нефти ареометром при учетных операциях. Нефть по степени подготовки должна соответствовать требованиям ГОСТ 9965 или технических условий ТУ 39-1435, допускается значение давления насыщенных паров по Рейду (ГОСТ 1756) не более 101,325 кПа при температуре приема-сдачи.
15 руб.
Региональная экономика. Экзамен. Билет №11
АннаКим
: 15 мая 2018
1. Зарубежные теории и методы региональной экономики.
2. Демографический потенциал России (качество населения).
3. Понятие «регион».
100 руб.