ГОТОВЫЕ ДИПЛОМНЫЕ РАБОТЫ, КУРСОВЫЕ РАБОТЫ, ДИССЕРТАЦИИ И РЕФЕРАТЫ

Разработка ЛО и ПО САПР

Автор Юлия
Вуз (город) Москва
Количество страниц 14
Год сдачи 2009
Стоимость (руб.) 1500
Содержание Содержание


Содержание 2
Назначение разработки 3
Структура данных и методы их обработки 3
Метод рекурсивного спуска 3
Требования к программе 6
Требования к функциональным характеристикам 6
Исходные данные 6
Требования к составу и параметрам технических средств 6
Условия эксплуатации 7
Программная реализация 7
Результаты 8
Список литературы 9
Листинг программы 10
Тестирование 14
Список литературы Список литературы

1. Ахо А., Сети Р., Ульман Дж. Компиляторы: принципы, технологии, инструменты. – М.: Вильямс, 2003
2. Вояковская Н.Н., Москаль А.Е. Разработка компиляторов. Электронный ресурс: Д. Проектирование компиляторов для цифровых вычислительных машин. - М.: Мир, 1975
4. Шень А. Программирование: теоремы и задачи. 2-е изд., - М.: МЦНМО, 2004
5. Энциклопедия Википедия. Электронный ресурс: ru.wikipedia.org
Выдержка из работы Назначение разработки

Программа разрабатывается в рамках курсовой работы по курсу «Лингвистическое обеспечение САПР». Предназначается для закрепления знаний о работе синтаксических анализаторов языков САПР.
Структура данных и методы их обработки

В качестве метода обработки следует использовать один из методов разбора, описанный в литературе.
Метод рекурсивного спуска

Большинство известных методов анализа принадлежат одному из двух классов, один из которых объединяет нисходящие (top-down) алгоритмы, а другой - восходящие (bottom-up) алгоритмы. Происхождение этих терминов связано с тем, каким образом строятся узлы синтаксического дерева: либо от корня (аксиомы грамматики) к листьям (терминальным символам), либо от листьев к корню.
Метод рекурсивного спуска - это один из методов определения принадлежности входной строки к некоторому формальному языку, описанному LL(k) контекстно-свободной грамматикой.
Популярность нисходящих анализаторов связана с тем, что эффективный нисходящий анализатор достаточно легко может быть построен вручную, например, методом рекурсивного спуска. Кроме того, LL-грамматики легко обобщаются: грамматики, не являющиеся LL-грамматиками, обычно могут быть проанализированы методом рекурсивного спуска с возвратами.
Идея метода состоит в том, что для каждого нетерминального символа K строится функция, которая для любого входного слова x делает 2 вещи:
• Находит наибольшее начало z слова x, способное быть началом выводимого из K слова
• Определяет, является ли начало z выводимым из K
Прежде чем описывать этот метод более подробно, договоримся о том, как процедуры получают сведения о входном слове и как сообщают о результатах своей работы. Мы предполагаем, что буквы входного слова поступают к ним по одной, т.е. имеется граница, отделяющая > часть от >. Будем считать, что есть функция (без параметров)