n=top>
ЧИСЛО З Плаваючою комою.
L
-
КІНЕЦЬ СТРОКИ (Пусто).
АВ
-
арифметичне ВИРАЗ.
Класифікація граматики.
В
Дана граматика G [<ОПЕРАТОР>], згідно з класифікацією Хомського, є контекстно-вільної, оскільки права частина кожної редукції починається або з термінального символу, або з нетермінального, що належить об'єднаному словником.
A В® a, A ГЋ V n , a ГЋ V * .
Граматика G [<ОПЕРАТОР>] не є автоматною, тому що не всі її редукції починаються з термінального символу. З цієї ж причини дана граматика не є S - граматикою.
Метод аналізу.
В
Для даної граматики реалізований розбір методом рекурсивного спуску, оскільки вона належить до класу контекстно-вільних.
Ідея методу полягає в тому, що кожному нетермінальному символу ставиться у відповідність певна програмна одиниця (функція), яка розпізнає ланцюжок, що породжуються цим нетерміналом.
Ці процедури і функції викликаються відповідно до правил граматики і іноді викликають самі себе.
Даний метод реалізований на мові C + +, оскільки він володіє рекурсивними можливостями.
Діагностика та нейтралізація помилок.
В
Для даної граматики проводиться тільки діагностика і нейтралізація помилок. Виправлення помилок не проводиться. p> Нейтралізація помилок здійснюється за методом Айронса, тобто, спускаючись по синтаксичному дереву без повернення по контексту, при виявленні тупикової ситуації відкидаються ті літери (символи), які привели в контексте і розбір триває.
Тестування.
IF (((6/t + g * 456)/(9.347 * y-555)) ** 6) 64,44,548
Поточний символ (- 40.
AB - Перевірка на Арифметичне Вираз.
Поточний символ (- 40.
Term - Перевірка на Терм.
Operand - Перевірка на Операнд.
AB - Перевірка на Арифметичне Вираз.
Поточний символ (- 40.
Term - Перевірка на Терм.
Operand - Перевірка на Операнд.
AB - Перевірка на Арифметичне Вираз.
Поточний символ 6 - 54.
Term - Перевірка на Терм.
Operand - Перевірка на Операнд.
IDENT - Перевірка на Ідентифікатор з символу 6.
FLOAT - перевірка на число з плаваючою комою з цифри 6.
Поточний символ/- 47.
Поточний символ t - 116.
Term - Перевірка на Терм.
Operand -...