- •Теория автоматов. Уровни представления эвм.
- •Операционные элементы. (оэ)
- •Процессор гса:
- •Достоинства и недостатки.
- •Операционное устройство для выполнения операций алгебраического сложения двоичных чисел.
- •Суммирование при использовании прямого кодирования.
- •Суммирование чисел при использовании обратного кода.
- •Дополнительный код.
- •Модифицированный код.
- •Пример суммирования.
- •Конечные автоматы.
- •Теория конечных автоматов
- •Способы задания функций переходов.
- •Автоматы ( с выходным преобразователем)
- •Способы задания автоматов
- •Способы задания автомата Миля
- •Преобразование автоматов из Миля в Мура и обратно Понятие эквивалентности автоматов
- •Преобразование Мура в Миля
- •Техника преобразований.
- •Обратный переход. Построение Мура для заданного Миля.
- •Частичные или не полностью определенные автоматы.
- •Синтез конечных автоматов.
- •Абстрактный синтез конечных автоматов.
- •Построение дерева входных последовательностей.
- •Структурный этап синтеза автоматов.
- •Основные этапы структурного синтеза.
- •Типы памяти.
- •Основные типы триггеров.
- •Пример структурного синтеза синхронного автомата.
- •`Временная диаграмма.
- •Этап минимизации автомата при абстрактном синтезе. Минимизация полностью определенного автомата.
- •Алгоритмы минимизации на основе треугольной матрицы.
- •Минимизация числа состояний частичного автомата.
- •Минимизация частичного автомата.
- •Абстрактный этап синтеза конечного автомат. (неканонический метод).
- •Алгоритм перехода от граф схемы микропрограммы к автомату Мура.
- •Учет взаимодействия проекционного и управляющего автоматов. Алгоритм получения.
- •Алгоритм получения частичного автомата.
- •Множество входных значений.
- •Кодирование состояний синхронного автомата.
- •Кодирование соседними кодами.
- •Минимизация числа переключений элементов памяти.
- •Универсальный способ кодирования (для синхронного автомата).
- •Автомат с дешифратором.
- •Асинхронные автоматы.
- •Этапы синтеза асинхронного автомата.
- •Реализация асинхронного rs триггера на логических элементах.
- •Установочные входы в триггерах.
- •Синхронные элементы памяти.
- •Требования, предъявляемые к синхросигналу.
- •Синтез синхронного rs триггера.
- •Синтез триггера с задержкой.Реализация асинхронного t триггера.
- •Исключение состязаний элементов памяти в синхронных автоматах.
- •Структура автоматов на плм и пзу.
- •Явление рисков в комбинационных узлах.
- •Исключение влияние рисков.
- •Построение схем без риска.
- •Алгоритм построения схемы без рисков по днф.
- •Алгоритм построения схемы без риска.
- •Автоматы, языки и грамматики.
- •Задача распознавания цепочек языка.
- •Классификация грамматик по Хомскому.
- •Примеры построения грамматик.
- •Грамматика для выполнения арифметических операций.
- •Соответствие конечных автоматов и автоматных грамматик.
- •Этапы для заданной автоматной грамматики.
- •Этапы для заданной автоматной грамматики.
- •Недетерминированные конечные автоматы.
- •Преобразование недетерминированного автомата в детерминированный.
- •Преобразование некоторых типов грамматики к автоматному ввиду.
- •Алгоритм получения правил, не содержащих правил вывода нетерминальных символов.
- •Построение распознавателей и преобразователей.
- •Построение распознавателей.
- •Алгоритм построения преобразователя.
Недетерминированные конечные автоматы.
Пусть A0– недетерминированный конечный автомат.
A0= <P0,S0,s00,φ0,F0>
F0– множество конечных подмножеств алфавита состояний.
S = {S0 , S1 , S2}
M(S) = {{ S0 } , { S1 } , { S2 } , { S0 , S1} , { S0 , S2} , { S1 , S2} , { S0 , S1 , S2}}
M* <= M
φ:P*SS– детерминированный алфавит
φ0:P*SM*- недетерминированный автомат
Отличие недетерминированного автомата состоит в том, что функции перехода может определять не одно состояние, в которое переходит автомат, а некоторое подмножество состояний.
ТЕОРЕМА:ЕслиL(A0) – язык который допускается некоторым конечным автоматомA0, то существует детерминированный конечный автоматAкоторый допускает этот же язык.
Преобразование недетерминированного автомата в детерминированный.
Имеется два способа:
Общий способ
Пример:
P = {a,b}
S = {I,B,C}
M(S) = {[I] , [B] , [C] , [IB] , [IC] , [BC] , [IBC] , o}
φ( I , a) = [I , c]
φ( I , b) = [B]
φ( B , a) = [C]
φ( B , b) = []
φ( C , a) = [B]
φ( C , b) = [B]
φ( IB , a) = [IC]
φ( IB , b) = [B]
φ( IC , a) = [I ,C , B]
φ( IC , b) = [B]
φ( BC , a) = [BC]
φ( BC , b) = [B]
φ( IBC , a) = [IBC]
φ( IBC , b) = [B]
Вершины IBиBCявляются недостижимыми, а вершины 0 нет в выходном сигнале для состоянияB, следовательно граф упроститься:
Это общий способ построения автомата.
Недостаток заключается в том, сто в процессе преобразования возникает большое число недостижимых вершин, которые необходимо удалять.
2 способ. Сокращенный способ.
Строится заготовка таблицы переходов детерминированного конечного автомата.
В качестве начального состояния выбирается начальное состояние недетерминированного автомата и для него строим подмножество состояний, в которое переходим из начального. Строку заносим в заготовку таблицы переходов.
Если полученное подмножество состояний или состояния отсутствуют в левой части таблицы переходов, то они заносятся туда и осуществляется переход к пункту 2.
Процесс заканчивается если в результате получения подмножества, мы не получаем новое подмножество , которое создается в левом столбце.
Пример:
Pi / Si |
a |
b |
I |
IC |
B |
IC |
ICB |
B |
B |
C |
--- |
ICB |
ICB |
B |
C |
B |
B |
Пример :Недетерминированный конечный автомат.
D– конечная вершина.
Преобразование некоторых типов грамматики к автоматному ввиду.
Утверждение : любой конечный язык, не содержащий пустой цепочки является автоматным языком, следовательно существует автоматная грамматика, порождающая данный язык.
Доказательство данного утверждения заключается в указании способа построения автоматной грамматики, порождающий данный язык.
Пусть задан язык:
L= {x1x2x3…xn}xi€Vt*
Xi = a1a2a3…am ai €Vt
Для построения грамматики введем следующие нетерминальные символы: A1A2…Am-1и следующие правила:
Xi a1A1 A1 a2A2 …Am-2am-1Am-1 Am-1am
Применяя данную процедуру по всем цепочкам Xiполучим множество порождающих правил автоматной грамматики, соответствующей исходному языку.
Рассмотрим контекстно-свободные грамматики.
Контекстно-свободная грамматика является левосторонней , если все ее правила только левосторонние (правосторонняя наоборот) либо заклячительные правила.
Правила вида:
AxB– правосторонняя, гдеA,B– нетерминальные символы.
ABx– левосторонняя.
Ax– заключительное правило.
Для любой правосторонней или левосторонней грамматики может быть построено эквивалентная ей правосторонняя или левосторонняя автоматная грамматика.
Доказательство:
G= <Vt,Vn,I,R> создается набор правил вида:
A xB, гдеx € Vt*
Предположим, что xi=a1a2…amвведем нетерминальные символыA1A2…Am-1и добавим правилоAa1A1
A1a2A2 Am-1 am-1Am-1 Am-1 amB либо Am-1 am
Цепочка правил, заканчивающаяся Am-1 amBзаменит одно правилоAxB. Цепочка правил, заканчивающаясяAm-1 amзаменит правилоAx
Применяя данную процедуру по всем контекстно-свободным грамматикам получим набор правил автоматной грамматики. В любой контекстно-свободной грамматики могут оказаться правила вида AB, она может быть преобразована к контекстно-свободную грамматику не содержащую таких правил.
если ώξ1Aξ2 и есть правило
AB,BCxто применяя эти правила в результате получим:
ξ1Aξ2ξ1Bξ2 ξ1Cxξ2это равносильно тому, чтоACx
Доказательство: пусть есть правило вида
R={…AB…BCx}
В этом случае вывод любой цепочки, содержащий нетерминальный символ A, осуществляется следующим образом, пусть есть вывод
ώξ1Aξ2, тогда данная цепочка преобразуется в конечную следующим образом:
ξ1Aξ2 ξ1Bξ2 ξ1Cxξ2
Равносильно A Cx
Чтобы исключить цепочку ξ1Bξ2вместоA,Bнужно записатьACx.