Категория
Информатика
Тип
реферат
Страницы
7 стр.
Дата
08.10.2009
Формат файла
.doc — Microsoft Word
Архив
19977.zip — 17.33 kb
Оцените работу
Хорошо  или  Плохо


Текст работы

Построение формального языка LWHILE( ) [];
WHILE - входной терминальный символ - условное выражение - некоторая функция, которая может отсутствовать
- параметры функции, которые тоже могут отсутствоватьПример правильного синтаксиса:
WHILE(A>4444 T|= T | != T3. → O | T*O | T**O | T+O | T-O | T/O4. → () | | 5. → Б{Б|Ц}
6. → Ц{Ц}
7. → ([{,}])
8. → | | (Классификация G[Z]
G[]:
1. → while( ) [];
2. → T|< T| > T|= T | != T3. → O | T*O | T**O | T+O | T-O | T/O4. → () | | 5. → Б{Б|Ц}6. → Ц{Ц}7. → ([{,}])
8. → | | (Сделаем замену нетерминальных символов:
→ Z → A → B → C → D → E → F → GСделаем замену терминальных символов:
WHILE → a
( → b
) → c
; → d
Ц → f
Б → g
, → h
G[Z]:
1. Z → abAc[D]d2. A→ B|A B|A = B |A != B3. B → C | B*C | B**C | B+C | B-C | B/C4. C → bAc | E | F
5. E → g{g|f}6. F → f{f}7. D → Eb[G{hG}]c8. G → E | F | (Вывод : G[Z] - контекстно-свободная грамматика.
Выбор метода анализа
Хотя однозначность в общем случае для контекстно-зависимых грамматик не доказана, ее использование возможно для грамматик в которых однозначность очевидна. Наиболее хорошо разработанным методом анализа, для данного типа грамматик является, метод рекурсивного спуска.
Диагностика и нейтрализация ошибок
Разработанный алгоритм относится к общеизвестному методу синтаксического разбора, предложенный Айронсом.
Основная идея метода состоит в том, что по контексту без возврата отбрасываются те символы, которые привели в тупиковую ситуацию и разбор продолжается.
Приведем пример синтаксического разбора:
While (A > ) cls();
1. Z → abAc[D]d2. A→ B|A B|A = B |A != B3. B → C | B*C



Ваше мнение



CAPTCHA