- •1.1.2. Імпульси, імпульсні послідовності
- •1.1.3. Оцифровування аналогових сигналів
- •1.2. Системи числення
- •1.2.1.Основні визначення
- •1.2.2. Переведення чисел з однієї позиційної системи числення в іншу
- •1.2.3. Переведення цілого числа з десяткової системи числення в р-ічну
- •1.3. Коди та їх характеристика
- •1.3.1. Коди з паралельною формою представлення інформації
- •1.3.2. Послідовні формати передачі даних
- •1.4. Форми зображення чисел
- •1.5. Виконання арифметичних операцій
- •1.6. Основи алгебри логіки
- •1.6.1. Основні визначення
- •1.6.2. Закони і тотожності алгебри логіки
- •1.6.3. Способи задання логічних функцій
- •1.6.4. Теорема Шенона
- •1.6.5. Розкладання Ріда
- •1.6.6. Геометрична інтерпретація логічних функцій
- •1.6.7. Мінімізація логічних функцій
- •1.7. Коди, що знаходять та виправляють помилки
- •1.7.1. Особливості кубічної форми представлення логічних функцій
- •1.7.2. Коди з виявленням і корекцією помилок
- •1.7.3. Коди, що коригують одиночні помилки і виявляють помилки більшої кратності
- •1.7.4. Двовимірні коди
- •1.8. Перешкоди та їх характеристики
- •Контрольні питання
- •Вправи і завдання
1.6.2. Закони і тотожності алгебри логіки
В алгебрі логіки використовується ряд аксіом (тотожностей) та законів. Основними з них є наступні: переміщувальний (властивість комутативності); сполучний (властивість асоціативності); розподільний (властивість дистрибутивності); інверсії (теорема де Моргана). Головні аксіоми та закони булевої алгебри наведені у Табл. 1.4.
Табл. 1.4
Назва аксіоми чи закону |
Вирази |
Аксіоми (тотожності) |
0 ∙ х = 0 1 + х = 1 0 + х = х x ∙ х = х х + х = х
|
Закони комутативності |
х1 + х2 = х2 + х1 х1 ∙ х2 = х2 ∙ х1 |
Закони асоціативності |
х1 + х2 + х3 = х1 + (х2 + х3) = (х1 + х2) + х3 = = (х1 + х3) + х2
х1 ∙ х2 ∙ х3 = х1 ∙ (х2 ∙ х3) = = х2 (х1 ∙ х3) = х3 (х1 ∙ х2) |
Закони дистрибутивності |
х1 ∙ (х2 + х3) = х1 ∙ х2 + х1 ∙ х3
х1 + х2 ∙ х3 = (х1 + х2) ∙ (х1 + х3) |
Закони інверсії (теорема де Моргана, принцип подвійності) |
|
Закони поглинання |
х1 + х1 ∙ х2 = х1
х1 ∙ (х1 + х2) = х1 |
Використовуючи наведені у Табл. 1.4 закони та тотожності, які використовуються при перетворенні логічних функцій, можна створювати нові. Наприклад:
;
(у подальшому крапки, що відображають операцію логічного множення у формулах, для спрощення запису приводити не будемо).
Закони інверсії, які відображають властивість взаємного перетворення операцій логічного множення і додавання в алгебрі логіки, називають принципом подвійності.
1.6.3. Способи задання логічних функцій
Існують такі способи задання або запису логічних функцій – аналітичний, табличний, за допомогою карт Карно, графічний та кубічний.
Аналітично логічна функція може бути записана різними комбінаціями кон’юнкцій та диз’юнкцій логічних змінних. Зазвичай логічні функції записуються або у вигляді суми добутків логічних змінних (диз’юнкція кон’юнкцій) або у вигляді логічного добутку їх сум (кон’юнкція диз’юнкцій). Наведення функції у вигляді диз’юнкції кон’юнкцій називають диз’юнктивною нормальною формою (ДНФ):
,
а запис у вигляді кон’юнкції диз’юнкцій – відповідно, кон’юнктивною нормальною формою (КНФ):
.
Інверсія у відповідності з теоремою де Моргана будь-якої функції, приведеній в одній формі, призводить до заміни запису на іншу форму.
Наприклад, інверсія функції
представляється у вигляді:
.
Будь-яка логічна функція, задана в аналітичній формі, може бути перетворена на ДНФ або КНФ за допомогою тотожностей та законів алгебри логіки. При цьому для однієї і тієї ж функції може існувати декілька рівнозначних диз’юнктивних та кон’юнктивних нормальних форм.
У той же час, існує лише один вид ДНФ та КНФ, в яких функція може бути записана єдиним чином. Такі форми називаються досконалими диз’юнктивними (кон’юнктивними) нормальними формами (ДДНФ, ДКНФ). Вони характеризуються тим, що в ДДНФ кожна кон’юнкція, а в ДКНФ кожна диз’юнкція містять усі логічні змінні даної функції, з інверсіями або без них.
Прикладами ДДНФ та ДКНФ запису є функції чотирьох змінних
Оскільки кожна кон’юнкція функції, що наведена у ДДНФ, визначає її істинне значення, відповідаюче “1”, то такі кон’юнкції називаються конституєнтами одиниці (мінтермами). Аналогічно, диз’юнкції функції, що наведені у ДКНФ, називаються конституєнтами нуля (макстермами).
Якщо замінити логічні змінні та їх заперечення одиницями та нулями, то кожна кон’юнкція буде представляти собою двійкове число.
Це дозволяє, наприклад, вище наведену логічну функцію у1 записати у вигляді:
.
Така форма називається досконалою скороченою диз’юнктивною формою або канонічною сумою.
Приклад 1.24. Функцію з прикладу 1.23 зобразити в скороченій диз’юнктивній канонічній формі.
Розв’язання. Перепишемо функцію, дещо змінивши нумерацію і порядок розміщення змінних:
.
Скорочена диз’юнктивна канонічна форма приведеної функції матиме вигляд (y порядку розміщення кон’юнкцій):
.
Аналогічно, функцію можна зобразити і у вигляді добутку макстермів. Така форма запису називається канонічним добутком. Наприклад:
.
Легко бачити можливість конвертації в представленні функції у вигляді макстермів та мінтермів, оскільки кожна з них доповнює функцію до повного перебору логічних змінних. Як приклади, можемо записати:
Індекси біля умовних позначень операцій диз’юнкції та кон’юнкції вказують на діапазон можливих мінтермів та макстермів логічних функцій. Нижній індекс іноді не вказується.
Досконала диз’юнктивна нормальна форма запису дозволяє легко перейти до інших форм запису – табличної та карт Карно.
Табл. 1.5.
х1
х0
у1
у2
у3
у4
у5
0
0
0
0
0
0
1
0
1
1
1
1
0
0
1
0
1
1
1
0
0
1
1
x
1
0
1
1
.
Ця функція може бути записана і з використанням нульових її значень:
Використовуючи властивість подвійної інверсії, легко встановити тотожність обох форм запису.
Приклад 1.25. Зобразити функцію з прикладу 1.23 у табличній формі запису.
Розв’язання. Функція трьох змінних у табличній формі (Табл. 1.6) складатиметься з чотирьох стовбців, у трьох з яких буде розміщений повний перебір логічних змінних.
Табл. 1.6
N |
х2 |
х1 |
х0 |
у |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
2 |
0 |
1 |
0 |
0 |
3 |
0 |
1 |
1 |
0 |
4 |
1 |
0 |
0 |
0 |
5 |
1 |
0 |
1 |
1 |
6 |
1 |
1 |
0 |
1 |
7 |
1 |
1 |
1 |
1 |
Логічна функція іноді може бути неповністю визначеною. У Табл. 1.5 приводиться форма запису функції у1 , яка є невизначеною при х1 = х0 = 1. При переході до аналітичної форми запису вона повинна бути довизначена.
Функції двох змінних займають у булевій алгебрі особливе місце. Для двох змінних кількість булевих функцій дорівнює 16. Ці функції називаються елементарними і складають максимальний набір функцій двох змінних. У Табл. 1.7 наведені всі елементарні функції двох змінних.
За своєю застосованістю вони різні. Найбільш широке використання знаходять функції І, АБО, І-НІ, АБО-НІ, ВИКЛ. АБО. Вони універсальні тому, що за їх допомогою можна записати будь-яку іншу функцію.
Розроблений математичний апарат аналізу та синтезу булевих функцій найбільш відповідає цим функціям. Набір логічних функцій І, АБО, НІ дозволяє реалізувати будь-яку іншу функцію і називається функціонально повним.
Табл.1.7
|
x0 |
0 |
1 |
0 |
1 |
Назва функції |
Позначення |
х1 |
0 |
0 |
1 |
1 |
|||
0 |
|
0 |
0 |
0 |
0 |
Константа нуль |
0 |
1 |
|
0 |
0 |
0 |
1 |
Кон’юнкція, І |
|
2 |
|
0 |
0 |
1 |
0 |
Заборона по х0 |
|
3 |
|
0 |
0 |
1 |
1 |
Змінна х1 |
x1 |
4 |
|
0 |
1 |
0 |
0 |
Заборона по х1 |
|
5 |
|
0 |
1 |
0 |
1 |
Змінна х0 |
х0 |
6 |
|
0 |
1 |
1 |
0 |
Викл. АБО, сума за mod 2 |
х1 х0 |
7 |
|
0 |
1 |
1 |
1 |
Диз’юнкція, АБО |
х1 + х0 |
8 |
|
1 |
0 |
0 |
0 |
АБО-НІ, функція Пірса |
|
9 |
|
1 |
0 |
0 |
1 |
Рівнозначність, еквівалентність |
х1 х0 |
10 |
|
1 |
0 |
1 |
0 |
Заперечення х0 |
|
11 |
|
1 |
0 |
1 |
1 |
Імплікація по х0 |
х0 х1 |
12 |
|
1 |
1 |
0 |
0 |
Заперечення х1 |
|
13 |
|
1 |
1 |
0 |
1 |
Імплікація по х1 |
х1х0 |
14 |
|
1 |
1 |
1 |
0 |
Функція Шеффера І-НІ |
|
15 |
|
1 |
1 |
1 |
1 |
Константа 1 |
1 |
У практичній схемотехніці найбільш поширеними є системи, які реалізують логічні функції І-НІ, АБО-НІ, ВИКЛ. АБО. Вони дозволяють найбільш просто реалізовувати різні функції, мати більшу кількість входів, прості в технічній реалізації.