Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
NikitchenkoNEWNEW.doc
Скачиваний:
26
Добавлен:
08.11.2019
Размер:
2.99 Mб
Скачать

4.8.3. Синтаксичні діаграми

Для поліпшення зорового сприйняття і полегшення розуміння синтаксичних описів, застосовують подання синтаксичних правил у вигляді синтаксичних діаграм. Такі діаграми мають одну вхідну і одну вихідну стрілки. Схематично їх можна зображувати таким чином (D – внутрішність діаграми):

Синтаксичні діаграми є структурованими. Це означає, що вони визначаються індуктивно: є найпростіші діаграми, а більш складні будуються за допомогою певних правил.

Найпростішими є наступні діаграми:

  • Порожня діаграма

  • Термінальна діаграма ( a – термінальний символ)

  • Нетермінальна діаграма ( A – нетермінальний символ)

Далі вважаємо, що побудовані наступні діаграми:

Є три правила побудови нових діаграм з наведених:

  • Послідовність

  • Альтернатива

  • Ітерація

Діаграми можуть мати назву, яка є нетермінальним символом.

Сукупність іменованих діаграм задає певну формальну мову, кожне слово якої складається з термінальних символів, які знаходяться на шляху від початкової стрілки до заключної (від вхідної до вихідної стрілки), причому нетермінальні символи замінюються на термінальні слова, які задаються діаграмою, що називається цим нетермінальним символом.

Приклад 4.17. Наведемо кілька діаграм, які задають числа:

  • Цифра:

<цифра>

  • Ціле без знака:

<ціле без знака>

  • Дійсне число (без експоненти):

Щоб скоротити кількість діаграм, їх часто об’єднують, заміняючи нетермінальні символи, які входять у діаграму, на побудовані для них діаграми.

За кожною БНФ можна побудувати систему синтаксичних діаграм. Метод побудови наступний (індукція за структурою БНФ):

  • порожньому слову відповідає порожня діаграма;

  • термінальному символу відповідає термінальна діаграма з цим символом;

  • нетермінальному символу відповідає нетермінальна діаграма з цим символом;

  • послідовності символів, що утворюють одну з альтернатив правої частини правила БНФ, відповідає послідовність діаграм, що задають символи цієї частини;

  • альтернативам правила (тобто виразу ::=1 | 2 | … n) буде відповідати діаграма – альтернатива для діаграм, побудованих за виразами 1, 2, … , n;

  • правилу A::=1 | 2 | … n буде відповідати деяка діаграма з іменем A, яка визначається для виразу 1 | 2 | … n.

Неважко побудувати і зворотній алгоритм, який за системою синтаксичних діаграм вказаного вигляду будує еквіваленту їй БНФ.

Таким чином, справедливе наступне твердження.

Твердження 4.1. Наступні формалізми подання формальних мов: БНФ, модифіковані БНФ, контекстно-вільні граматики, синтаксичні діаграми, є еквівалентними формалізмами.

Зауважимо, що наведене твердження не сформульовано як теорема лише тому, що не було дано достатньо точного визначення формальних мов, що породжуються такими формалізмами, як БНФ, модифіковані БНФ та синтаксичні діаграми. Разом з тим надати такі формальні визначення не дуже складно (зробіть це самостійно).

Зважаючи на наведене твердження, будемо в подальшому серед указаних формалізмів розглядати переважно формалізм контекстно-вільних граматик.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]