Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Теория автоматов. Учебное пособие

.pdf
Скачиваний:
1
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ
ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Ю. С. Акинина, С. В. Тюрин
ТЕОРИЯ АВТОМАТОВ
УЧЕБНОЕ ПОСОБИЕ
2-е издание
Призер II конкурса публикаций
«Университетский учебник-2018»
Ай Пи Ар Медиа
2023
УДК 519.713 ББК 22.182.3
А39
Авторы:
Акинина Ю. С. — канд. техн. наук, доцент, доц. кафедры
автоматизированных и вычислительных систем
Воронежского государственного технического университета;
Тюрин С. В. — канд. техн. наук, ст. науч. сотр.
Рецензенты:
Леденева Т. М. — д-р техн. наук, проф., зав. кафедрой
вычислительной математики и прикладных информационных технологий
Воронежского государственного университета;
Питолин В. М. — д-р техн. наук, проф., проф. кафедры
электропривода, автоматики и управления в технических системах
Воронежского государственного технического университета
Акинина, Юлия Сергеевна.
А39
Теория автоматов : учебное пособие / Ю. С. Акинина, С. В. Тю-
рин.— 2-е изд.— Москва : Ай Пи Ар Медиа, 2023. — 156с.
ISBN 978-5-4497-1877-8
В учебном пособии рассматриваются основные задачи теории автоматов, различные словесные определения автоматов и их формальная классифика­ция, математические и структурные модели типовых автоматов, способы зада­ния абстрактных и структурных автоматов. Изложены математические осно­вы алгебры логики, некоторые понятия и определения, дающие возможность формального описания логических преобразователей (комбинационных авто­матов), которые являются основой всех конечных автоматов, включая последо­вательностные (автоматы с памятью).
Подготовлено в соответствии с требованиями Федерального государствен­ного образовательного стандарта высшего образования, предъявляемыми к изу­чению дисциплины «Теория автоматов».
Предназначено для студентов, обучающихся по направлению подготовки
09.03.01 «Информатика и вычислительная техника», а также для студентов дру­гих специальностей и направлений подготовки, учебными планами которых предусмотрено изучение данной дисциплины.
ISBN 978-5-4497-1877-8 © Акинина Ю. С., Тюрин С. В., 2019 © ООО Компания «Ай Пи Ар Медиа», 2023

ВВЕДЕНИЕ .....................................................................................................6
1. СТАНОВЛЕНИЕ ТЕОРИИ АВТОМАТОВ
И ЕЕ ОСНОВНЫЕ ЗАДАЧИ ...........................................................................8
1.1. Взаимосвязь теории автоматов и других
научно-технических направлений ....................................................8
1.2. Подходы к определению конечного автомата ................................ 10
1.3. Сущность метода «черного ящика» .................................................12
1.4. Основные задачи теории автоматов ............................................... 13
2. ФОРМАЛЬНАЯ КЛАССИФИКАЦИЯ АБСТРАКТНЫХ
АВТОМАТОВ И ИХ МАТЕМАТИЧЕСКИЕ МОДЕЛИ ................................ 17
2.1. Словесные определения автоматов.................................................17
2.2. Формальное определение абстрактного автомата .........................19
2.3. Формальная классификация автоматов .......................................... 21
2.4. Математические модели автоматов ................................................ 22
2.4.1. Модель Мили ............................................................................. 23
2.4.2. Модель Мура .............................................................................24
2.4.3. Модель совмещенного автомата (С-автомата) .................... 26
2.4.4. Модель микропрограммного автомата ..................................27
3. СТРУКТУРНЫЕ МОДЕЛИ ПЕРВОГО УРОВНЯ
АБСТРАКТНЫХ АВТОМАТОВ ................................................................... 29
3.1. Структурная модель автомата Мили ............................................... 29
3.2. Структурная модель автомата Мура ................................................ 30
3.3. Структурная модель С-автомата ......................................................31
3.4. Структурная модель микропрограммного автомата ..................... 32
4. СПОСОБЫ ЗАДАНИЯ АБСТРАКТНЫХ
И СТРУКТУРНЫХ АВТОМАТОВ ............................................................... 34
4.1. Начальные языки .............................................................................. 34
4.1.1. Язык регулярных выражений алгебры событий ....................... 34
4.1.2. Язык логических схем ................................................................ 35
4.1.3. Язык граф — схем алгоритмов ................................................. 36
4.1.4. Язык схем алгоритмов ..............................................................38
4.2. Автоматные языки............................................................................ 40
4.2.1. Таблицы переходов и выходов ...................................................41
4.2.2. Матрицы переходов и выходов ................................................. 42
4.2.3. Граф автомата ........................................................................ 43
-3-

4.3. Языки описания структурных автоматов .......................................44
4.3.1. Язык алгебры логики (булевой алгебры) ................................... 44
4.3.2. Язык временных диаграмм ....................................................... 46
5. МИНИМИЗАЦИЯ АБСТРАКТНЫХ АВТОМАТОВ ................................ 54
6. МАТЕМАТИЧЕСКИЕ ОСНОВЫ АЛГЕБРЫ ЛОГИКИ ............................ 64
6.1. Формальное определение алгебры логики ..................................... 64
6.2. Аксиомы, теоремы и законы алгебры логики .................................65
6.2.1. Аксиомы алгебры логики...........................................................66
6.2.2. Теоремы алгебры логики ........................................................... 67
6.2.3. Законы алгебры логики ............................................................. 67
6.3. Основные понятия и определения .................................................. 68
6.4. Формы представления логических функций .................................. 73
6.4.1. Словесная форма представления логических функций ............ 73
6.4.2. Табличная форма представления логических функций ............74
6.4.3. Аналитическая форма представления
логических функций...................................................................78
6.4.4. Геометрическая и кубическая формы
представления логических функций ......................................... 82
7. МИНИМИЗАЦИЯ ЛОГИЧЕСКИХ ФУНКЦИЙ....................................... 84
7.1. Методы минимизации логических функций
на основе прямых аналитических преобразований СДНФ ...........86
7.2. Метод испытания импликант .......................................................... 88
7.3. Визуальные методы минимизации логических функций ............. 89
7.3.1. Метод минимизации полностью определенных
логических функций с помощью карт Карно ............................ 91
7.3.2. Метод минимизации частично определенных
логических функций с помощью карт Карно ............................ 93
7.4. Машинно-ориентированные методы
минимизации и логических функций .............................................95
7.5. Групповая минимизация системы логических функций ..............96
8. ФУНКЦИОНАЛЬНО ПОЛНЫЕ СИСТЕМЫ
ЭЛЕМЕНТАРНЫХ ЛОГИЧЕСКИХ ФУНКЦИЙ .......................................... 99
9. ПРОГРАММИРУЕМЫЕ ЛОГИЧЕСКИЕ ИНТЕГРАЛЬНЫЕ СХЕМЫ ....106
10. КОНЕЧНЫЕ ФУНКЦИОНАЛЬНЫЕ ПРЕОБРАЗОВАТЕЛИ ............... 112
-4-

11. СИНТЕЗ И АНАЛИЗ ТИПОВЫХ
КОМБИНАЦИОННЫХ АВТОМАТОВ ...................................................... 116
11.1. Шифратор (coder) и его синтез ..................................................... 117
11.2. Дешифратор и его синтез ............................................................. 120
11.3. Мультиплексор и его синтез ......................................................... 123
11.4. Синтез демультиплексора (распределителя) .............................. 126
12. ЭЛЕМЕНТАРНЫЕ АВТОМАТЫ С ПАМЯТЬЮ И ИХ СИНТЕЗ ......... 129
12.1. Понятие функционально полной системы
элементарных автоматов ............................................................. 130
12.2. Разновидности триггеров ............................................................. 131
12.3. Обобщенная характеристика триггеров ......................................133
12.4. Синтез однотактного RS-триггера ............................................... 135
12.4.1. Асинхронный однотактный RS-триггер ........................... 135
12.4.2. Синхронный однотактный RS-триггер ............................. 139
12.5. Синхронный однотактный D-триггер ......................................... 141
12.6. Синтез Т-триггера ......................................................................... 144
12.6.1. Принцип построения двухтактного триггера .................. 144
12.6.2. Однотактный Т-триггер ................................................... 146
12.6.3. Двухтактные Т-триггеры .................................................148
12.7. Двухтактный JK-триггер ............................................................... 149
12.8. Двухтактные RS-триггеры и D-триггеры ....................................151
БИБЛИОГРАФИЧЕСКИЙ СПИСОК .......................................................... 153
-5--5-

Профессиональная подготовка бакалавров по направлению под­готовки 09.03.01 «Информатика и вычислительная техника» (профиль «Вычислительные машины, комплексы, системы и сети») ориентирова­на на следующие виды трудовой деятельности:
- разработка специализированных программных систем, реализу-
ющих обработку данных в различных областях;
- проектирование, разработка и эксплуатация информационно-
поисковых систем различного назначения;
- эксплуатация любых типов современных компьютеров;
- разработка узлов и блоков микроконтроллеров и компьютеров
общего назначения;
- разработка и эксплуатация информационно-измерительных и уп-
равляющих систем на производстве и в бизнесе.
Одной из профессиональных дисциплин по профилю «Вычисли­тельные машины, комплексы, системы и сети» является «Теория авто­матов». Изложение материалов этой теории базируется на содержании таких дисциплин, как «Дискретная математика для программиро­вания», «Математическая логика и теория алгоритмов». Содержание самой «Теории автоматов» наиболее тесно связано с такими дисцип­линами, как «Схемотехника», «Микропроцессорные системы», «Орга­низация ЭВМ и систем».
Рождение теории автоматов как самостоятельного научно-техни­ческого направления относят к 1950 г. Естественно, что за прошедшие годы трудом многих талантливых ученых и инженеров накоплен ог­ромный объем общих и специфических знаний, совокупность которых и объединяют понятием — теория автоматов.
В данном пособии предпринята попытка взаимоувязано изло­жить лишь элементы теории автоматов, необходимые и достаточные для подготовки студентов к самостоятельному углублению знаний в данной предметной области, а также к практическому применению полученных знаний по синтезу и анализу комбинационных и последо­вательностных автоматов малой сложности. В пособии рассматрива­ются основные понятия абстрактной и структурной теории автоматов, а также различные языки задания автоматов. Изложены математичес­кие основы алгебры логики и поясняется ее применение для функци­онального синтеза комбинационных и элементарных последователь­ностных автоматов.
-6-

В результате изучения дисциплины студент должен:
1) знать:
- методы синтеза комбинационных схем на логических элементах
различной степени интеграции;
- способы задания цифровых автоматов;
- методы абстрактного синтеза цифровых автоматов;
- общие методы структурного синтеза автоматов на основе теоре-
мы В.М. Глушкова о структурной полноте;
- методы синтеза операционных и управляющих микропрограм­мных автоматов с жесткой и программируемой логикой, в том числе на основе использования моделей недетерминированных автоматов;
2) уметь:
- использовать методы синтеза цифровых автоматов для построе­ния распознавателей, логических преобразователей и систем логичес­кого управления;
3) владеть:
- методами формального синтеза структурных и функциональных схем несложных цифровых операционных и управляющих автоматов с жесткой и программируемой логикой, заданных на языке оператор­ных схем алгоритмов.
-7-

  

  
Теория автоматов является разделом теории управляющих систем, изучающим математические и структурные модели преобразовате­лей дискретной информации, которые и называют автоматами [1], [2]. С определенной точки зрения, такими преобразователями являются как материальные объекты (вычислительные машины, живые организ­мы и т.п.), так и абстрактные системы (математические машины, акси­оматические теории и т.п.).
Теория автоматов возникла в середине ХХ в. в связи с изучением конечных автоматов.
Понятие конечного автомата сформировалось в свою очередь с попытками описать на математическом языке функционирование нервных систем, универсальных вычислительных машин и других реальных и гипотетических дискретных объектов и процессов. Такие попытки были впервые предприняты зарубежными учеными У. Мак­Каллоком, У. Питсом (1943 г.), С. К. Клини (1951г.), А. Берксом и Райтом (1954 г.) и др.
Характерной особенностью такого математического описания яв­ляется дискретность соответствующих математических моделей и ко­нечность областей значений параметров моделей, что и приводит к по­нятию конечного автомата. При этом внешние воздействия, реакции (выходные воздействия) и состояния автомата рассматриваются как буквы трех алфавитов, которые соответственно называют входным ал-
-8-

фавитом, выходным алфавитом и алфавитом состояний (иногда гово­рят, алфавитом внутренних состояний). Тогда описать работу автомата можно некоторыми законами преобразования букв (слов) входного ал­фавита в буквы (слова) выходного алфавита. Для формализации таких законов преобразования необходимо и достаточно задать всего две функции — функцию переходов и функцию выходов, которые вместе отображают пары «состояние — входная буква» в следующее состояние автомата и его выходную букву. Таким образом, в каждый из моментов дискретного времени автомат, находящийся в определенном состоя­нии, воспринимает входной сигнал — букву входного алфавита, выдает выходной сигнал — букву выходного алфавита, определяемую функци­ей выходов, и переходит в новое (следующее) состояние, определяемое функцией переходов.
Наряду с конечным автоматом в теории автоматов рассматрива­ются различные его обобщения и модификации, которые более точно (адекватно) отражают те или иные особенности реальных объектов [1], [2]. Для конечного автомата существующие модификации можно раз­бить на следующие три основные группы [1].
К первой группе относятся автоматы, у которых некоторые из алфа- витов (входной, выходной, состояний) бесконечны, в связи с чем, такие автоматы называют бесконечными.
Ко второй группе относятся автоматы, у которых вместо однознач- ных функций переходов и выходов допускаются произвольные отно­шения или случайные функции переходов и выходов. К этой группе относятся частичные, недетерминированные, вероятностные и неко­торые другие автоматы.
К третьей группе относятся автоматы со специфическими мно­жествами входных алфавитов. К такой группе относятся автоматы с пе­ременной структурой, автоматы над термами и т.п.
Существуют также автоматы, принадлежащие одновременно раз­ным группам, например нечеткие автоматы.
В настоящее время класс исследуемых объектов и проблематика теории автоматов существенно расширились, включив некоторые по­нятия и задачи из других научно-технических областей и направлений. Наиболее тесно теория автоматов связана со следующими научно-тех­ническими направлениями: теорией алгоритмов, теорией абстрактных машин, теорией кодирования, теорией формальных языков и грамма­тик, теорией надежности и контроля управляющих систем, системы ис­кусственного интеллекта.
-9-



Конечный автомат — математическая модель устройства с ко­нечной памятью (числом состояний), преобразующего дискретную информацию. Конечный автомат является одним из важнейших видов управляющих систем. Содержательно конечный автомат можно оха­рактеризовать как устройство, имеющее входной и выходной каналы и находящееся в каждый из моментов дискретного времени, называе­мых тактами (или тактовыми моментами), в одном из конечного числа внутренних состояний. По входному каналу в каждый тактовый момент времени в автомат поступают сигналы — буквы входного алфавита. В те же тактовые моменты времени по выходному каналу автомат выдает выходной сигнал — букву выходного алфавита и переходит в новое со­стояние из разрешенного числа состояний.
В теории автоматов важное значение имеет понятие автоматного времени. Работа автомата рассматривается в определенные моменты времени, продолжительность которых принимается равной нулю. Эта идеализация не соответствует действительности, но весьма удобна при построении математических моделей. Такие моменты времени следу­ют через дискретные интервалы конечной продолжительности, кото­рые и называют тактами. Совокупность следующих друг за другом так­тов и образует автоматное время.
Существует две основные трактовки понятия автоматного вре-
мени. Если автомат рассматривают как модель алгоритма переработки входного алфавита в выходной, то говорят о шаге алгоритма или шаге
автоматного преобразования, не сопоставляя ему меру времени. Если автомат рассматривают как модель устройства, реализующего данный алгоритм, то говорят о такте работы автомата, длительность которого достаточна для надежной практической реализации автоматом неко­торой элементарной операции по преобразованию дискретной ин­формации.
По способу организации автоматного времени все автоматы делят на два больших класса: синхронные автоматы и асинхронные автоматы. Для синхронных автоматов моменты времени, в которых фиксируются изменения состояния автомата, задаются специальным устройством — генератором синхронизирующих сигналов (синхросигналов). Генера­тор формирует синхронизирующие сигналы через определенные про-
-10-