- •Теория автоматов. Уровни представления эвм.
- •Операционные элементы. (оэ)
- •Процессор гса:
- •Достоинства и недостатки.
- •Операционное устройство для выполнения операций алгебраического сложения двоичных чисел.
- •Суммирование при использовании прямого кодирования.
- •Суммирование чисел при использовании обратного кода.
- •Дополнительный код.
- •Модифицированный код.
- •Пример суммирования.
- •Конечные автоматы.
- •Теория конечных автоматов
- •Способы задания функций переходов.
- •Автоматы ( с выходным преобразователем)
- •Способы задания автоматов
- •Способы задания автомата Миля
- •Преобразование автоматов из Миля в Мура и обратно Понятие эквивалентности автоматов
- •Преобразование Мура в Миля
- •Техника преобразований.
- •Обратный переход. Построение Мура для заданного Миля.
- •Частичные или не полностью определенные автоматы.
- •Синтез конечных автоматов.
- •Абстрактный синтез конечных автоматов.
- •Построение дерева входных последовательностей.
- •Структурный этап синтеза автоматов.
- •Основные этапы структурного синтеза.
- •Типы памяти.
- •Основные типы триггеров.
- •Пример структурного синтеза синхронного автомата.
- •`Временная диаграмма.
- •Этап минимизации автомата при абстрактном синтезе. Минимизация полностью определенного автомата.
- •Алгоритмы минимизации на основе треугольной матрицы.
- •Минимизация числа состояний частичного автомата.
- •Минимизация частичного автомата.
- •Абстрактный этап синтеза конечного автомат. (неканонический метод).
- •Алгоритм перехода от граф схемы микропрограммы к автомату Мура.
- •Учет взаимодействия проекционного и управляющего автоматов. Алгоритм получения.
- •Алгоритм получения частичного автомата.
- •Множество входных значений.
- •Кодирование состояний синхронного автомата.
- •Кодирование соседними кодами.
- •Минимизация числа переключений элементов памяти.
- •Универсальный способ кодирования (для синхронного автомата).
- •Автомат с дешифратором.
- •Асинхронные автоматы.
- •Этапы синтеза асинхронного автомата.
- •Реализация асинхронного rs триггера на логических элементах.
- •Установочные входы в триггерах.
- •Синхронные элементы памяти.
- •Требования, предъявляемые к синхросигналу.
- •Синтез синхронного rs триггера.
- •Синтез триггера с задержкой.Реализация асинхронного t триггера.
- •Исключение состязаний элементов памяти в синхронных автоматах.
- •Структура автоматов на плм и пзу.
- •Явление рисков в комбинационных узлах.
- •Исключение влияние рисков.
- •Построение схем без риска.
- •Алгоритм построения схемы без рисков по днф.
- •Алгоритм построения схемы без риска.
- •Автоматы, языки и грамматики.
- •Задача распознавания цепочек языка.
- •Классификация грамматик по Хомскому.
- •Примеры построения грамматик.
- •Грамматика для выполнения арифметических операций.
- •Соответствие конечных автоматов и автоматных грамматик.
- •Этапы для заданной автоматной грамматики.
- •Этапы для заданной автоматной грамматики.
- •Недетерминированные конечные автоматы.
- •Преобразование недетерминированного автомата в детерминированный.
- •Преобразование некоторых типов грамматики к автоматному ввиду.
- •Алгоритм получения правил, не содержащих правил вывода нетерминальных символов.
- •Построение распознавателей и преобразователей.
- •Построение распознавателей.
- •Алгоритм построения преобразователя.
Частичные или не полностью определенные автоматы.
Пусть P= {P0,P1, … ,Pn} – входной алфавит
P*- множество всех слов в алфавитеP
P*g – множество допустимых слов
P*g<=P*
P*з=P*/P*g - множество запрещенных слов
P*иP*g – слова одной и той же длины
Автомат называется частичным, если
множество запрещенных слов не пусто или
на входное допустимое слово автомат вырабатывает выходное слово, в котором есть хотя бы одна буква, которой значение не важно, т.е.
P1 , P1 , P2 , P1
W0 , W1 , * , W0
, W0 ,
, W1 ,
Условие 1 приводит к тому, что в таблице переходов автомата будут прочерки – отсутствующие переходы.
Условие 2 приводит к тому, сто в значениях выходах таблицы будут находиться «*».
Пример :автомат Миля.
-
Pj
P1
P2
P3
Si
S0
S2/W1
---
---
S1
---
S2/*
S2/W2
S2
---
S0/W3
S3/W1
S3
---
S0/W1
S0/W3
В таблице присутствует как 1 так и второе условие.
P1
/ W1
S0
S1
S3
S2
P2 / *
P3 / W2
P2 / W3
P2 / W1
P2 / W3
P3 / W1
Второе условие по графу видно явно, а первое нет.
Для проверки условия 1 нужно в каждой вершине проверить наличие переходов по каждой букве входного алфавита.
Так для состояния «S0» есть переход только по P1 и отсутствует P2 и P3
Синтез конечных автоматов.
Синтез состоит из двух этапов.
Абстрактный синтез
Структурный синтез
Абстрактный синтез конечных автоматов.
Исходными данными в каноническом методе синтеза на первом абстрактном этапе является таблица соответствия между входными и выходными словами, результатом первого этапа является абстрактный автомат, представленный в виде графа или таблицы переходов.
Исходные данные задаются в виде алфавитного оператора. Алфавитный оператор называется оператор, устанавливающий соответствия между входными и выходными словами, которые перерабатывает автомат.
t0
t1
t2
t3
P0
P1 P2
P3
W0
W1 W2
W3 A
Индексы указывают на номера машинного такта, а не на различие между буквами.
P = {0 , 1}
W = {0 , 1}
P0 P1 P2 P3 W0 W1 W2 W3
0 0 0 0 0 0 0 0
0 0 0 1 0 0 1 0
0 1 0 0 0 1 0 0
1 0 0 0 1 0 0 0
Алфавит операций называется автоматным, если он удовлетворяет следующим условиям:
Однозначно отображает входные слова в выходные
Удовлетворяет условию полноты, т.е. представляет все входные последовательности входящие в допустимый набор Pg*
Оператор сохраняет длину преобразованного слова
Оператор осуществляет преобразование одинаково локальных отрезков входного слова в совпадающие начальные отрезки выходных слов.
Утверждение :
Если алфавитный оператор является автоматныт, то для него можно построить конечный автомат, реализующий данное преобразование.
Для полученного автоматного алфавитного оператора из не автоматного используют 2 операции : выравнивание и пополнение. Операция выравнивания используется, если нарушено условие автоматности оператора и заключается в добавлении нового пустого символа eсправа во всех последующих или слева к выходной.
Явно восстанавливаем 3 условие автоматности оператора.
Пример :
P0 |
P1 |
W0 |
W1 |
0 |
0 |
e |
0 |
0 |
1 |
e |
1 |
1 |
0 |
e |
0 |
1 |
1 |
e |
1 |
Нарушено 3 условие – длина выходного слова меньше длины входного, поэтому слева к выходному слову добавляют пустой символ e.
После пополнения выходной алфавит будет выглядеть: W= {0 , 1 ,e}
P= {0 , 1}
W= {0 , 1} – изначально
Операция пополнения используется если нарушено 4 условие и заключается в добавлении пустого символа eсправа к входной последовательности и слева к выходной одновременно.
P0 |
P1 |
P1 |
W0 |
W1 |
W2 |
0 |
0 |
e |
e |
0 |
1 |
0 |
1 |
e |
e |
1 |
0 |
1 |
0 |
e |
e |
1 |
1 |
1 |
1 |
e |
e |
0 |
1 |
Вначале P = {0 , 1}
W = {0 , 1}
Стало P = {0 , 1 , e}
W = {0 , 1 , e}
Начальный отрезок из одной буквы 0 в исходном операторе в первой строке преобразовывается в 0 а во втором в 1, следовательно нарушено 4 условие, поэтому к входному слову слева и к выходному слева дописывается пустой символ e, при этом изменяется входной и выходной алфавиты.
А операторы могут быть заданы двумя способами: табличным и графическим.
Пример :
P0 P1 P2 W0 W1 W2
0 0 e1 e1 0 0
0 0 e2 e 0 1
Если в операции пополнения используют несколько пустых символов e(e1 ,e2 , …), то можно восстановить первое условие автоматности.
P0 P1 W0 W1
0 0 0 0
0 0 0 1
Табличный способ устанавливает соответствие между входными и выходными последовательностями в форме таблицы.
В графическом способе оператор представляется в виде нагруженного дерева входными последовательностями.
Пусть от вершины к листу дерева соответствует одному входному слову.
Входные буквы помечают дуги между вершинами дерева. Выходное слово также присутствует на пути из корня к листу. Число ярусов дерева соответствует длине входного слова.