Курсовая работа: Разработка и отладка формального языка
21
1
End
10
10
Sub
10
10
Отладка формальной грамматики
Отладка грамматики – это процесс преобразования грамматики к виду, удовлетворяющему используемый метод синтаксического анализа.
В исходной грамматике 42 конфликта. Среди них встречаются конфликты трех типов:
Конфликты типа =<
uslovie | |
( |
=< |
Рис. 13. Конфликт типа =<
Для того, чтобы показать как отладить этот конфликт, рассмотрим его на примере:
Из рисунка 3.13 видно, что между терминальным символом «(» и нетерминальным uslovie конфликт типа =<. Чтобы его отладить необходимо опустить нетерминал uslovie вниз по дереву.
Таким образом, между символами «(» и uslovie осталось только отношение <.
Все остальные конфликты этого типа разрешаются аналогично.
Конфликт типа =>
Чтобы показать как разрешаются конфликты этого типа, разрешим конфликт между символами Вody и Еnd. Этот конфликт изображен на рисунке 15.
End | |
Вody |
=> |
Рис. 15. Конфликт типа =>
Синтаксический анализ
В процессе синтаксического анализа требуется для нескольких предложений входного языка построить синтаксическое дерево, провести синтаксический разбор методом простого предшествования.