Разработка ЛО и ПО САПР
Курсовая по предмету:
"Базы данных"
Название работы:
"Разработка ЛО и ПО САПР"
Автор работы: Юлия
Страниц: 14 шт.
Год:2009
Краткая выдержка из текста работы (Аннотация)
Назначение разработки
Программа разрабатывается в рамках курсовой работы по курсу «Лингвистическое обеспечение САПР». Предназначается для закрепления знаний о работе синтаксических анализаторов языков САПР.
Структура данных и методы их обработки
В качестве метода обработки следует использовать один из методов разбора, описанный в литературе.
Метод рекурсивного спуска
Большинство известных методов анализа принадлежат одному из двух классов, один из которых объединяет нисходящие (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
Использованная литература
- Ахо А., Сети Р., Ульман Дж. Компиляторы: принципы, технологии, инструменты. М.: Вильямс, 2003
- Вояковская Н.Н., Москаль А.Е. Разработка компиляторов. Электронный ресурс: http://www.intuit.ru/department/sa/compilersdev/6/
- Грис Д. Проектирование компиляторов для цифровых вычислительных машин. - М.: Мир, 1975
- Шень А. Программирование: теоремы и задачи. 2-е изд., - М.: МЦНМО, 2004
- Энциклопедия Википедия. Электронный ресурс: ru.wikipedia.org