- •1. СТАНОВЛЕНИЕ ТЕОРИИ АВТОМАТОВ
- •1.1. Взаимосвязь теории автоматов и других
- •1.2. Подходы к определению конечного автомата
- •1.3. Сущность метода "черного ящика"
- •1.4. Основные задачи теории автоматов
- •2. ФОРМАЛЬНАЯ КЛАССИФИКАЦИЯ АБСТРАКТНЫХ АВТОМАТОВ И ИХ МАТЕМАТИЧЕСКИЕ МОДЕЛИ
- •2.1. Словесные определения автоматов
- •2.2. Формальное определение абстрактного автомата
- •2.3. Формальная классификация автоматов
- •2.4. Математические модели автоматов
- •2.4.1. Модель Мили
- •2.4.2. Модель Мура
- •2.4.3. Модель совмещенного автомата (С-автомата)
- •2.4.4. Модель микропрограммного автомата
- •3. СТРУКТУРНЫЕ МОДЕЛИ ПЕРВОГО УРОВНЯ АБСТРАКТНЫХ АВТОМАТОВ
- •3.1. Структурная модель автомата Мили
- •3.2. Структурная модель автомата Мура
- •3.3. Структурная модель С-автомата
- •3.4. Структурная модель микропрограммного автомата
- •4. СПОСОБЫ ЗАДАНИЯ АБСТРАКТНЫХ И СТРУКТУРНЫХ АВТОМАТОВ
- •4.1. Начальные языки
- •4.1.1. Язык регулярных выражений алгебры событий
- •4.1.2. Язык логических схем
- •4.1.3. Язык граф – схем алгоритмов
- •4.2. Автоматные языки
- •4.2.1. Таблицы переходов и выходов
- •4.2.2. Матрицы переходов и выходов
- •4.2.3. Граф автомата
- •4.3.2. Язык временных диаграмм
- •5. Минимизация абстрактных автоматов
- •6. МАТЕМАТИЧЕСКИЕ ОСНОВЫ АЛГЕБРЫ ЛОГИКИ
- •6.1. Формальное определение алгебры логики
- •6.2. Аксиомы, теоремы и законы алгебры логики
- •6.2.1. Аксиомы алгебры логики
- •6.2.2. Теоремы алгебры логики
- •6.2.3. Законы алгебры логики
- •6.3. Основные понятия и определения
- •6.4. Формы представления логических функций
- •6.4.1. Словесная форма представления логических функций
- •6.4.2. Табличная форма представления логических функций
- •6.4.3. Аналитическая форма представления логических функций
- •7. Минимизация логических функций
- •7.1. Методы минимизации логических функций на основе прямых аналитических преобразований СДНФ
- •7.2. Метод испытания импликант
- •7.3. Визуальные методы минимизации логических функций
- •7.3.2. Метод минимизации частично определенных логических функций с помощью карт Карно
- •7.4. Машинно-ориентированные методы минимизации логических функций
- •7.5. Групповая минимизация системы логических функций
- •8. ФУНКЦИОНАЛЬНО ПОЛНЫЕ СИСТЕМЫ ЭЛЕМЕНТАРНЫХ ЛОГИЧЕСКИХ ФУНКЦИЙ
- •9. ПРОГРАММИРУЕМЫЕ ЛОГИЧЕСКИЕ ИНТЕГРАЛЬНЫЕ СХЕМЫ
- •9.1. Программируемые логические матрицы
- •10. КОНЕЧНЫЕ ФУНКЦИОНАЛЬНЫЕ ПРЕОБРАЗОВАТЕЛИ
- •11. СИНТЕЗ И АНАЛИЗ ТИПОВЫХ КОМБИНАЦИОННЫХ АВТОМАТОВ
- •11.1. Шифратор (coder) и его синтез
- •11.2. Дешифратор и его синтез
- •11.3. Мультиплексор и его синтез
- •11.4. Синтез демультиплексора (распределителя)
- •12. Элементарные автоматы с памятью и их синтез
- •12.1. Понятие функционально полной системы элементарных автоматов
- •12.2. Разновидности триггеров
- •12.3. Обобщённая характеристика триггеров
- •12.4. Синтез однотактного асинхронного RS-триггера
- •12.4.1. Синхронный однотактный RS-триггер
- •12.5. Синхронный однотактный D-триггер
- •12.6.1. Принцип построения двухтактного триггера
- •12.6.2. Однотактный Т-триггер
- •12.6.3. Двухтактные Т-триггеры
- •12.7. Двухтактный JK-триггер
- •12.8. Двухтактные RS-триггеры и D-триггеры
- •Рис. 12.28. Синхронный двухтактный RS-триггер
- •Рис. 12.30. УГО синхронного двухтактного RS-триггера
- •БИБЛИОГРАФИЧЕСКИЙ СПИСОК
- •Учебное издание
2.ФОРМАЛЬНАЯ КЛАССИФИКАЦИЯ АБСТРАКТНЫХ АВТОМАТОВ И ИХ МАТЕМАТИЧЕСКИЕ МОДЕЛИ
2.1. Словесные определения автоматов
Формализации (представлению в математической форме) любого понятия предшествует попытка словесного выражения (определения) данного понятия. В этой связи представляет интерес проследить трансформацию во времени словесных определений понятия "автомат".
В энциклопедии "Просвещение" 1900 года издания дается следующее определение (определение 1): "Автомат – прибор, помощью внутреннего механизма подражающий действиям живых существ". Из данного определения следует, что автомат - материальный объект (т.к. прибор); внутри этого материального объекта находится некий механизм; этот механизм действует так, что поведение автомата в целом похоже на действия каких - то живых существ. В соответствии с рассмотренным определением попытаемся выяснить: являются ли механические часы автоматом? Часы - материальный объект; внутри часов работает механизм, отсчитывающий время. Но, действиям какого живого существа подражают обыкновенные механические часы? Таким образом, в соответствии с рассмотренным определением обыкновенные механические часы не могут быть названы "автоматом", т.к. они не подражают действиям какого-либо живого существа.
Рассмотрим модификацию механических часов, которые кроме часового механизма снабжены еще дополнительным механизмом. Таким механизмом может быть петушок, кукарекающий каждый раз, когда часы показывают какое-либо определенное время. В таком случае часы, с кукарекающим через определенные интервалы времени петушком, могут быть отнесены, по определению, к автоматам. Но кукарекать петушка можно "заставить" и без часов, которые отмеривают ре-
15
альное время. Следовательно, действительным автоматом, по определению, является только кукарекающий петушок. А что если внутри кукарекающего петушка будут отсутствовать механические детали? Можно ли в таком случае отнести такого петушка к автоматам?
Как видно, рассмотренное определение автомата несколько противоречиво, и достаточно широкое, так как "живых существ" – огромное множество, включая и человека.
Рассмотрим некоторые последующие словесные определения автомата, не вдаваясь в достаточно глубокий их анализ.
В [8] (1963 год) дается следующее определение (определение 2).
Автомат (от греческого automatus - самодействующий) - рабочая машина, самостоятельно производящая все рабочие, холостые, транспортирующие и др. движения и осуществляющая управление этими движениями.
В [9] (1980 год) еще более уточняется понятие автомата (определение 3).
Автомат (от греческого automatus - самодействующий):
•устройство (совокупность устройств), выполняющее по заданной программе без непосредственного участия человека все операции в процессах получения, преобразования, передачи и распределения (использования) энергии, материалов или информации. Программа автомата задается в его конструкции или извне - посредством перфокарт, магнитных лент и т.п.;
•в кибернетике: математическая модель устройства (процесса), перерабатывающего дискретную (цифровую) информацию.
В [10] (1988 год) приводится следующее определение (определение 4).
Автомат – устройство, предназначенное для выполнения целенаправленных действий без непосредственного участия человека.
16
Автомат абстрактный – математическая модель автомата (по определению 4), определяемая заданием трех множеств (входных сигналов, внутренних состояний и выходных сигналов) и двух двуместных функций (переходов и выходов). Функция переходов отображает первые два множества на второе, а функция выходов отображает первые два множества на третье.
Автомат структурный – автомат абстрактный, заданный множеством его элементов и схемой их соединения.
Последнее словесное определение дает возможность перейти к формальному определению понятия автомата.
2.2. Формальное определение абстрактного автомата
Математической моделью дискретного устройства является абстрактный автомат, определяемый как шестикомпонентный кортеж, или вектор [11]:
S = (Z, A ,W, δ, λ, a1), |
(2.1) |
у которого: |
|
Z={z1,…zf…zF} - множество входных |
сигналов автомата |
(входной алфавит); |
|
A={a1,…am…aM} - множество состояний автомата (алфавит состояний);
W={w1,…wg…wG} – множество выходных сигналов автомата (выходной алфавит);
δ : A х Z → A – функция переходов автомата, реализующая отображение Dδ A х Z на A. Другими словами, функцияδ некоторым парам состояние - входной сигнал (am, zf) ставит в соответствие состояние автомата as = δ(am, zf), as A;
λ : A х Z → W – функция выходов, реализующая отображение Dλ A х Z на W, которая некоторым парам состояние -
входной сигнал (am, zf) ставит в соответствие выходной сигнал
автомата wg = λ (am, zf);
a1 A – начальное состояния автомата.
17
Под алфавитом здесь понимается непустое множество попарно различных символов. Элементы алфавита называются буквами, а конечная упорядоченная последовательность букв - словом в данном алфавите.
Абстрактный автомат имеет один вход и один выход. Автомат работает в дискретном времени, принимающем целые неотрицательные значения t = 0,1,2,… В каждый момент t дискретного времени автомат находится в некотором состоянии a(t) из множества состояний автомата, причем в начальный момент времени t(0) автомат может находиться в начальном состоянии a(0) = a1. В момент t, будучи в состоянии a(t), автомат способен воспринять на входе букву входного алфавита z(t) Z. В соответствии с функцией выходов он выдает в тот же момент времени t букву выходного алфавита w(t) = λ (a(t), z(t)) и в соответствии с функцией переходов перейдет в следующее состояние a(t +1) = δ (a(t), z(t)), причем a(t +1) A, а w(t) W. Смысл понятия абстрактного автомата состоит в том, что он реализует некоторое отображение множества слов входного алфавита Z в множество слов выходного алфавита W. Иначе, если на вход автомата, установленного в начальное состояние a1, подавать буква за буквой некоторую последовательность букв входного алфавита z(0), z(1), z(2), … – входное слово, то на выходе автомата будут последовательно появляться буквы выходного алфавита w(0), w(1), w(2), … – выходное слово. Каждому входному слову соответствует определенное выходное слово, структура которого определяется функциями переходов и выходов. Таким образом, на уровне абстрактной теории понятие "работа автомата" понимается как преобразование входных слов в выходные слова.
Структурной моделью нулевого уровня абстрактного автомата является модель, представленная на рис. 2.1. В том
случае, когда отображения Dδ = Dλ = A х Z, автомат называют полностью определенным или полным.
18