Программа разрабатывается в рамках курсовой работы по курсу «Лингвистическое обеспечение САПР». Предназначается для закрепления знаний о работе синтаксических анализаторов языков САПР.
Структура данных и методы их обработки
В качестве метода обработки следует использовать один из методов разбора, описанный в литературе.
Метод рекурсивного спуска
Большинство известных методов анализа принадлежат одному из двух классов, один из которых объединяет нисходящие (top-down) алгоритмы, а другой - восходящие (bottom-up) алгоритмы. Происхождение этих терминов связано с тем, каким образом строятся узлы синтаксического дерева: либо от корня (аксиомы грамматики) к листьям (терминальным символам), либо от листьев к корню.
Метод рекурсивного спуска - это один из методов определения принадлежности входной строки к некоторому формальному языку, описанному LL(k) контекстно-свободной грамматикой.
Популярность нисходящих анализаторов связана с тем, что эффективный нисходящий анализатор достаточно легко может быть построен вручную, например, методом рекурсивного спуска. Кроме того, LL-грамматики легко обобщаются: грамматики, не являющиеся LL-грамматиками, обычно могут быть проанализированы методом рекурсивного спуска с возвратами.
Идея метода сотоит в том, что для каждого нетерминального символа K строится функция, которая для любого входного слова x делает 2 вещи:
Находит наибольшее начало z слова x, способное быть началом выводимого из K слова
Определяет, является ли начало z выводимым из K
Прежде чем описывать этот метод более подробно, договоримся о том, как процедуры получают сведения о входном слове и как сообщают о результатах своей работы. Мы предполагаем, что буквы входного слова поступают к ним по одной, т.е. имеется граница, отделяющая > часть от >. Будем считать, что есть функция (без параметров)
Содержание
Содержание 2
Назначение разработки 3
Структура данных и методы их обработки 3
Метод рекурсивного спуска 3
Требования к программе 6
Требования к функциональным характеристикам 6
Исходные данные 6
Требования к составу и параметрам технических средств 6
Условия эксплуатации 7
Программная реализация 7
Результаты 8
Список литературы 9
Листинг программы 10
Тестирование 14
Список литературы
1. Ахо А., Сети Р., Ульман Дж. Компиляторы: принципы, технологии, инструменты. М.: Вильямс, 2003
2. Вояковская Н.Н., Москаль А.Е. Разработка компиляторов. Электронный ресурс: http://www.intuit.ru/department/sa/compilersdev/6/
3. Грис Д. Проектирование компиляторов для цифровых вычислительных машин. - М.: Мир, 1975
4. Шень А. Программирование: теоремы и задачи. 2-е изд., - М.: МЦНМО, 2004
5. Энциклопедия Википедия. Электронный ресурс: ru.wikipedia.org
оекта является выполнение следующего задания:1. Создание (проектирование) структуры двух исходных таблиц.2. Разработка справок по каждой из заданных таблиц и по двум таблицам.3. Разработка результирую
ельности, в управлении экономикой и в политике современный специалист должен уметь с помощью компьютеров и средств связи получать, накапливать, хранить и обрабатывать данные, представляя результат в в
анавливается на современных персональных компьютерах. К достоинствам Microsoft Access можно отнести простоту в работе и понятный интерфейс. Поэтому данная СУБД была выбрана в качестве объектной СУБД.Ц
качестве исследуемой организации рассматривается почтовое отделение, а именно отдел, который занимается подпиской (в дальнейшем именуемый как операционный отдел). В приложении 1 изображена типовая орг
алгоритмов деятельности предприятий, для формализации логических цепочек.Целью курсовой работы является проектирование информационной системы (ИС) базы данных (БД) для проведения обработки информации