Введення
Проектування розпізнає автомата і його програмна реалізація необхідні при побудові вузлів цифрових обчислювальних машин, при створенні компіляторів, лінгвістичних процесорів і лексичних аналізаторів в трансляторах.
Мета курсової роботи полягає у вивченні і використанні різних способів завдання мов граматиками. У курсовій роботі необхідно використовувати побудова розпізнає автомата та мережі Петрі для завдання мов. Побудувати модель кінцевого автомата, що розпізнає заданий мову, реалізувати отриманий автомат програмно. p align="justify"> Кінцевий автомат - це абстрактний автомат без вихідного потоку, число можливих станів якого звичайно. Результат роботи автомата визначається за його кінцевого стану. br/>
1. Постановка завдання
Побудувати модель розпізнає автомата на основі індивідуального завдання.
Для цього необхідно на основі формальної граматики отримати праволінейную граматику, побудувати її граф. За праволінейной граматики побудувати автоматну. Потім побудувати недетермінірованний розпізнає автомат, задати таблицю переходів для нього і зобразити граф переходів. Перейти від недетермінірованного до повністю певного детерминированному автомату. Задати таблицю переходів і зобразити граф переходів для отриманого автомата. Мінімізувати цей автомат. Задати таблицю переходів і граф переходів для мінімального автомата. p align="justify"> Отримати граф переходів мінімального автомата по праволінейной граматиці використовуючи мережі Петрі. Порівняти отриману автоматну мережа з графом мінімального автомата. p align="justify"> Вхідними для автомата є ланцюжок з термінальних символів. На виході автомата з'являється стан, якою відхилено або допускає вхідну ланцюжок. p align="justify"> Задана формальна граматика
G = t , V n , S, P>, де
V t = {C 1 , C 2 , ..., C 18 } - термінальний словник,
V n = {S, A, B, C, D, E, F} - нетермінальний словник,
S - початковий символ граматики, SVn,
P - безліч правил виводу
Правила виводу мають наступний вигляд:
S -> C 1 C 2 span> C 3 A; S -> C