
Пособие / ЗМ_СТ
.docЗМІСТ
ПЕРЕДМОВА . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
1. ГРАФИ. ОСНОВНІ ПОНЯТТЯ ТА ВИЗНАЧЕННЯ . . . . . . . . . . . . .5 1.1. Визначення графа. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2. Типи скінченних графів. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3. Суміжність та інцидентність . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4. Способи задання графів. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
1.5. Маршрути і підграфи. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
1.6. Зв'язність і роздільність. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
1.7. Характеристики графів. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.8. Дерева і ліс. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.9. Приклади задач, які використовують зважені графи . . . . . . . . . . . . . .19
Контрольні запитання . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 23
2. ЛОГІКА. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.1. Логіка висловів. Загальні поняття . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
2.2. Формули алгебри висловів. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.3. Вирішення «логічних» задач . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.4. Застосування алгебри логіки в теорії автоматів. Схеми перемикачів 40
2.5. Логіка першого порядку (логіка предикатів). Загальні поняття . . . . 42
2.6. Інтерпретація формул логіки предикатів. . . . . . . . . . . . . . . . . . . . . . . 43
2.7. Передуюча нормальна форма. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.8. Логіка реляційна. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46
2.9. Нечітка логіка . Загальні поняття. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.10. Нечітка алгебра. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49
2.11. Нечітке числення. . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Контрольні запитання . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3. БУЛЕВІ ФУНКЦІЇ. ОСНОВНІ ЗАКОНИ АЛГЕБРИ ЛОГІКИ. . . .58
3.1. Цифрові автомати в схемотехніці та програмуванні. . . . . . . . . . . . . . 58
3.2. Висловлювання, предикати, булеві функції. . . . . . . . . . . . . . . . . . . . . 59
3.3. Схемні реалізації булевих функцій . . . . . . . . . . . . . . . . . . . . . . . . . . . .62
3.4. Найбільш поширені булеві функції. . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.5. Основні закони алгебри логіки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Контрольні запитання . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
4. АНАЛІТИЧНЕ ПОДАННЯ БУЛЕВИХ ФУНКЦІЙ.
ФУНКЦІОНАЛЬНО ПОВНІ СИСТЕМИ БУЛЕВИХ ФУНКЦІЙ . 67
4.1. Досконала диз’юнктивна нормальна форма (ДДНФ). . . . . . . . . . . . . .67
4.2. Досконала кон’юнктивна нормальна форма (ДКНФ). . . . . . . . . . . . . 68
4.3. Досконала Шефферовська нормальна форма (ДШНФ) . . . . . . . . . . . 69
4.4. Досконала Пірсовська нормальна форма(ДПНФ) . . . . . . . . . . . . . . . . 69
4.5. Функціонально повні системи булевих функцій. . . . . . . . . . . . . . . . . .70
Контрольні запитання . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5. МІНІМІЗАЦІЯ БУЛЕВИХ ФУНКЦІЙ. . . . . . . . . . . . . . . . . . . . . . . . 75
5.1. Карти Карно. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.2. Мінімальна диз’юнктивна нормальна форма (МДНФ) . . . . . . . . . . . .80
5.3. Мінімальна кон’юктивна нормальна форма (МКНФ). . . . . . . . . . . . . 82
5.4. Мінімальна Шефферовська нормальна форма (МШНФ). . . . . . . . . . .83
5.5. Мінімальна Пірсовська нормальна форма (МПНФ) . . . . . . . . . . . . . . 85
Контрольні запитання . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
6. АБСТРАКТНІ ЦИФРОВІ АВТОМАТИ . . . . . . . . . . . . . . . . . . . . . 88
6.1. Основні поняття, пов’язані з абстрактними автоматами. . . . . . . . . .88
6.2. Способи завдання абстрактних автоматів. . . . . . . . . . . . . . . . . . . . . . 90
6.2. Приклади синтезу абстрактних автоматів. . . . . . . . . . . . . . . . . . . . . . 93
Контрольні запитання . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
7. СИНТЕЗ СТРУКТУРНОГО АВТОМАТА. . . . . . . . . . . . . . . . . . . . . 97
7.1. Етапи канонічного методу структурного синтезу автоматів. . . . . . 97
7.1. Кодування станів. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .98
7.2. Побудова канонічної таблиці структурного автомата. . . . . . . . . .99
7.3. Вибір елементів пам’яті автомата. . . . . . . . . . . . . . . . . . . . . . . . . . 100
7.4. Побудова таблиці збудження тригера . . . . . . . . . . . . . . . . . . . . . . 102
7.5. Побудова рівнянь булевих функцій збудження і виходів
автомата. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .103
7.6. Побудова функціональної схеми автомата. . . . . . . . . . . . . . . . . . .105
Контрольні запитання . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
8. ПРОЕКТУВАННЯ КОМБІНАЦІЙНИХ СХЕМ НА
ДЕШИФРАТОРАХ І МУЛЬТИПЛЕКСОРАХ. . . . . . . . . . . . . . . . . 108
8.1. Синтез схем на дешифраторах . . . . . . . . . . . . . . . . . . . . . . . . . . . . .108
8.2. Синтез схем на мультиплексорах. . . . . . . . . . . . . . . . . . . . . . . . . . .111
Контрольні запитання . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
9. СИНТЕЗ МІКРОПРОГРАМНОГО АВТОМАТА ЗА СХЕМОЮ
АЛГОРИТМУ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
9.1. Послідовність дій, необхідних для побудови пристрою керування для автомата . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
9.2. Синтез автомата Мілі. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .117
9.2.1. Побудова змістовної схеми алгоритму. . . . . . . . . . . . . . . . . . . . . . 117
9.2.2.Побудова таблиці кодування операційних та умовних вершин. 117
9.2.3. Побудова закодованої мікроопераційної схеми алгоритму. . . . . . 119
9.2.4. Побудова таблиці кодування мікрокоманд. . . . . . . . . . . . . . . . . . . .120
9.2.5. Побудова закодованої мікрокомандної схеми алгоритму. . . . . . . 120
9.2.6. Побудова основної таблиці абстрактного автомата. . . . . . . . . . . . .122
9.2.7. Побудова граф–схеми переходів. . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
9.2.8. Побудова системи рівнянь функції переходів. . . . . . . . . . . . . . . . . 123
9.2.9. Побудова системи рівнянь функції виходів. . . . . . . . . . . . . . . . . . . 121
9.2.10. Кодування внутрішніх станів автомата. . . . . . . . . . . . . . . . . . . . . .122
9.2.11. Побудова схеми керуючого пристрою (операційного автомату) .125
9.3. Синтез автомата Мура . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
9.3.1. Побудова змістовної схеми алгоритму. . . . . . . . . . . . . . . . . . . . . . .129
9.3.2. Побудова таблиці кодування операційних та умовних вершин . . 130
9.3.3. Побудова закодованої мікроопераційної схеми алгоритму. . . . . . 130
9.3.4. Побудова таблиці кодування операційних та умовних вершин. . .132
9.3.5. Побудова закодованої мікрокомандної схеми алгоритму. . . . . . . .132
9.3.6. Побудова основної таблиці абстрактного автомата. . . . . . . . . . . . .132
9.3.7. Побудова граф-схеми переходів. . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
9.3.8. Побудова системи рівнянь функцій переходів. . . . . . . . . . . . . . . . 135
9.3.9. Кодування внутрішніх станів автомата. . . . . . . . . . . . . . . . . . . . . . .135
9.3.10. Побудова схеми операційного автомата. . . . . . . . . . . . . . . . . . . . .136
Контрольні запитання . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
10. ФОРМАЛЬНІ МОВИ І ГРАМАТИКИ. . . . . . . . . . . . . . . . . . . . . . . 138
10.1. Визначення формальних мов і граматик. . . . . . . . . . . . . . . . . . . . . . 138
10.2. Приклади, що ілюструють первинні поняття. . . . . . . . . . . . . . . . . . 139
10.3. Порожня мова. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .140
10.4. Типи формальних мов і граматик. . . . . . . . . . . . . . . . . . . . . . . . . . . .140
10.4.1. Граматики типу 0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .140
10.4.2. Граматики типу 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .140
10.4.3. Граматики типу 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .141
10.4.4. Граматики типу 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .142
10.5. Виведення у КВ-граматиках і правила побудови дерева виведення . . 142
10.5.1. Синтаксичний розбір. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .143
10.5.2. Ліве і праве виведення. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .144
10.6. Неоднозначні та еквівалентні граматики. . . . . . . . . . . . . . . . . . . . . .144
10.7. Способи завдання схем граматик. . . . . . . . . . . . . . . . . . . . . . . . . . . .146
10.7.1. Рекомендації щодо побудови граматик. . . . . . . . . . . . . . . . . . . . . 147
10.7.2. Опис списків. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
10.7.3. Приклад побудови граматики. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
10.7.4. Граматики, що описують цілі числа без знака та ідентифікатори. . . 150
10.7.5. Граматики для арифметичних виразів. . . . . . . . . . . . . . . . . . . . . . . . . . .151
10.7.6. Граматика для описів. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .149
10.7.7. Граматика, що описує умовний оператор. . . . . . . . . . . . . . . . . . . . . . . .152
Контрольні запитання . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
11. КОНТЕКСТНО-ВІЛЬНІ ГРАМАТИКИ І АВТОМАТИ. . . . . . . 154
11.1. Приведені граматики. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .154
11.1.1. Визначення непродуктивних символів. . . . . . . . . . . . . . . . . . . . . .152
11.1.2. Визначення недосяжних символів. . . . . . . . . . . . . . . . . . . . . . . . . .154
11.2. Виключення ліворекурсивних правил . . . . . . . . . . . . . . . . . . . . . . . .155
11.3. Виключення ланцюгових правил . . . . . . . . . . . . . . . . . . . . . . . . . . . .156
11.4. Магазинні автомати. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Контрольні запитання . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
12. СПАДНІ РОЗПІЗНАВАЧІ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .160
12.1. Розділені граматики. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .160
12.2. Побудова детермінованого спадного розпізнавача. . . . . . . . . . . . . 160
12.2.1. Множина ВИБІР. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
12.2.2. Побудова функції ПЕРВ(µ). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
12.2.3. Побудова функції СЛІД(µ). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .164
12.2.4. Побудова множини ВИБІР(µ). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
12.3. Слабко-розділені граматики. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
12.4. LL(1)-граматики. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
12.5. Побудова магазинного автомата. . . . . . . . . . . . . . . . . . . . . . . . . . . . .166
12.6. Приклади побудови спадного розпізнавача. . . . . . . . . . . . . . . . . . . .167
Контрольні запитання . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
СПИСОК ЛІТЕРАТУРИ . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . 172