Карты карно для чего

Карта Карно

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Куб Карно́ — графический способ минимизации переключательных (булевых) функций, обеспечивающий относительную простоту работы с большими выражениями и устранение потенциальных гонок. Представляет собой операции попарного неполного склеивания и элементарного поглощения. Карты Карно рассматриваются как перестроенная соответствующим образом таблица истинности функции. Карты Карно можно рассматривать как определенную плоскую развертку n-мерного булева куба.

Карты Карно были изобретены в 1952 Эдвардом В. Вейчем и усовершенствованы в 1953 Морисом Карно, физиком из «Bell Labs», и были призваны помочь упростить цифровые электронные схемы.

В карту Карно булевы переменные передаются из таблицы истинности и упорядочиваются с помощью кода Грея, в котором каждое следующее число отличается от предыдущего только одним разрядом.

Содержание

Принципы минимизации

Основным методом минимизации логических функций, представленных в виде СДНФ или СКНФ, является операция попарного неполного склеивания и элементарного поглощения. Операция попарного склеивания осуществляется между двумя термами (членами), содержащими одинаковые переменные, вхождения которых (прямые и инверсные) совпадают для всех переменных, кроме одной. В этом случае все переменные, кроме одной, можно вынести за скобки, а оставшиеся в скобках прямое и инверсное вхождение одной переменной подвергнуть склейке. Например:

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Аналогично для КНФ:

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Возможность поглощения следует из очевидных равенств

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Таким образом, главной задачей при минимизации СДНФ и СКНФ является поиск термов, пригодных к склейке с последующим поглощением, что для больших форм может оказаться достаточно сложной задачей. Карты Карно предоставляют наглядный способ отыскания таких термов.

Как известно, булевы функции N переменных, представленные в виде СДНФ или СКНФ, могут иметь в своём составе 2 N различных термов. Все эти члены составляют некоторую структуру, топологически эквивалентную N–мерному кубу, причём любые два терма, соединённые ребром, пригодны для склейки и поглощения.

На рисунке изображена простая таблица истинности для функции из двух переменных, соответствующий этой таблице 2-мерный куб (квадрат), а также 2-мерный куб с обозначением членов СДНФ и эквивалентная таблица для группировки термов:

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

В случае функции трёх переменных приходится иметь дело с трёхмерным кубом. Это сложнее и менее наглядно, но технически возможно. На рисунке в качестве примера показана таблица истинности для булевой функции трёх переменных и соответствующий ей куб.

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Таблица не верна. Верной будет: 1 1 0 0 1 1 0 0 Как видно из рисунка, для трёхмерного случая возможны более сложные конфигурации термов. Например, четыре терма, принадлежащие одной грани куба, объединяются в один терм с поглощением двух переменных:

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

В общем случае можно сказать, что 2 K термов, принадлежащие одной K–мерной грани гиперкуба, склеиваются в один терм, при этом поглощаются K переменных.

Для упрощения работы с булевыми функциями большого числа переменных был предложен следующий удобный приём. Куб, представляющий собой структуру термов, разворачивается на плоскость как показано на рисунке. Таким образом появляется возможность представлять булевы функции с числом переменных больше двух в виде плоской таблицы. При этом следует помнить, что порядок кодов термов в таблице (00 01 11 10) не соответствует порядку следования двоичных чисел, а клетки, находящиеся в крайних столбцах таблицы, соседствуют между собой.

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Аналогичным образом можно работать с функциями пяти, семи (обязательно простое число) и т.д., используя невизуализируемые многомерные булевы кубы.

Порядок работы с картой Карно

В данном разделе в качестве примера используется функция четырёх переменных, заданная таблицей истинности, изображённой на рис. 2а. Карта Карно для той же функции изображена на рис. 2б.

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Принципы склейки

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Описание

Карта Карно может быть составлена для любого количества переменных, однако удобно работать при количестве переменных не более пяти. По сути Карта Карно — это таблица истинности составленная в 2-х мерном виде. Благодаря использованию кода Грея в ней верхняя строка является соседней с нижней, а правый столбец соседний с левым, т.о. вся Карта Карно сворачивается в фигуру тор (бублик). На пересечении строки и столбца проставляется соответствующее значение из таблицы истинности. После того как Карта заполнена, можно приступать к минимизации.

Если необходимо получить минимальную ДНФ, то в Карте рассматриваем только те клетки которые содержат единицы, если нужна КНФ, то рассматриваем те клетки, которые содержат нули. Сама минимизация производится по следующим правилам (на примере ДНФ):

Далее берём первую область и смотрим, какие переменные не меняются в пределах этой области, выписываем конъюнкцию этих переменных; если неменяющаяся переменная нулевая, проставляем над ней инверсию. Берём следующую область, выполняем то же самое, что и для первой, и т. д. для всех областей. Конъюнкции областей объединяем дизъюнкцией.
Например (для Карт на 2 переменные):

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего
Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего
Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего
Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего
Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего
Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Для КНФ всё то же самое, только рассматриваем клетки с нулями, неменяющиеся переменные в пределах одной области объединяем в дизъюнкции (инверсии проставляем над единичными переменными), а дизъюнкции областей объединяем в конъюнкцию. На этом минимизация считается законченной. Так для Карты Карно на рис.1 выражение в формате ДНФ будет иметь вид:

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Так же из ДНФ в КНФ и обратно можно перейти использовав Законы де Моргана.

Примеры

Пример 1

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Перерисуем таблицу истинности в 2-х мерный вид:
Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Переставим в ней строки и столбцы в соответствии с кодом Грея. Получили Карту Карно:

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Заполним её значениями из таблицы истинности:
Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Минимизируем в соответствии с правилами:

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего
Теперь по полученной минимальной ДНФ можно построить логическую схему:

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Из-за отсутствия в наличии шести-входового элемента ИЛИ, реализующего функцию дизъюнкции, пришлось каскадировать пяти- и двух-входовые элементы(D7, D8).

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чегоКарты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Источник

Карта Карно

Карты карно для чего. Смотреть фото Карты карно для чего. Смотреть картинку Карты карно для чего. Картинка про Карты карно для чего. Фото Карты карно для чего

Карта Карно (куб Карно, диаграмма Карно) — графический способ представления булевых функций с целью их удобной и наглядной ручной минимизации.

Является одним из эквивалентных способов описания или задания логический функций наряду с таблицей истинности или выражениями булевой алгебры. Преобразование карты Карно в таблицу истинности или в булеву формулу и обратно осуществляется элементарным алгоритмом.

Удобство и наглядность такого представления логической функции обусловлено тем, что логические термы, к которым могут быть применены операции попарного неполного склеивания и элементарного поглощения группируются в карте Карно в виде визуально очевидных прямоугольных массивов, содержащих в своих ячейках одинаковые значения (нули и единицы).

История

Карты Карно были предложены в 1952 году Эдвардом В. Вейчем и усовершенствованы в 1953 году физиком из «Bell Labs» Морисом Карно (Maurice Karnaugh), чтобы упростить проектирование цифровых систем.

Основные принципы

Карта Карно представляет собой таблицу истинности, отформатированную особым образом, пригодным для наглядной ручной минимизации. Результатом минимизации является либо дизъюнктивная нормальная форма (ДНФ), либо конъюнктивная нормальная форма (КНФ). В первом случае работа ведётся с клетками карты, где находятся единицы, во втором — с клетками, где находятся нули. В исходной карте, как и в таблице истинности, каждая единица соответствует одному терму cовершенной дизъюнктивной нормальной форме (СДНФ), а каждый ноль — одному терму cовершенной конъюнктивной нормальной форме (СКНФ).

Принципы минимизации

Основным методом минимизации логических функций, представленных в виде СДНФ или СКНФ, является операция попарного неполного склеивания и элементарного поглощения. Операция попарного склеивания осуществляется между двумя термами, содержащими одинаковые переменные, вхождения которых (прямые и инверсные) совпадают для всех переменных, кроме одной. В этом случае все переменные, кроме одной, можно вынести за скобки, а оставшиеся в скобках прямое и инверсное вхождение одной переменной подвергнуть поглощению. Например:

Аналогично для КНФ:

Возможность поглощения следует из очевидных равенств:

A ∨ A ¯ = 1 ; A A ¯ = 0. =1;A=0.>

Таким образом, главной задачей при минимизации СДНФ и СКНФ является поиск термов, пригодных к склейке с последующим поглощением, что для функций многих логических переменных может оказаться достаточно сложной задачей. Карты Карно предоставляют наглядный способ отыскания таких термов.

Булевы функции N переменных, представленные в виде СДНФ или СКНФ, могут иметь в своём составе не более чем 2 n > различных термов. Все эти элементарные термы можно представить в виде некоторой структуры, топологически эквивалентной n -мерному кубу, причём любые два терма, соединённые ребром, пригодны для склейки и поглощения.

На рисунке изображена простая таблица истинности для функции из двух переменных, соответствующий этой таблице 2-мерный куб (квадрат), а также 2-мерный куб с обозначением членов СДНФ и эквивалентная таблица для группировки термов:

В случае функции трёх переменных приходится иметь дело с трёхмерным кубом. Это сложнее и менее наглядно, но технически возможно. На рисунке в качестве примера показана таблица истинности для булевой функции трёх переменных и соответствующий ей куб.

Как видно из рисунка, для трёхмерного случая возможны более сложные конфигурации термов. Например, четыре терма, принадлежащие одной грани куба, объединяются в один терм с поглощением двух переменных:

В общем случае можно сказать, что 2 k > термов, принадлежащие одной что k -мерной грани гиперкуба, склеиваются в один терм, при этом поглощаются k переменных.

Для упрощения работы с булевыми функциями большого числа переменных был предложен следующий удобный приём. Куб, представляющий собой структуру термов, разворачивается на плоскость, как показано на рисунке. Таким образом появляется возможность представлять булевы функции с числом переменных больше двух в виде плоской таблицы. При этом следует помнить, что порядок кодов термов в таблице (00 01 11 10) не соответствует порядку следования двоичных чисел записанных в лексикографическом порядке (00 01 10 11), а клетки, находящиеся в крайних столбцах таблицы, соседствуют между собой.

Аналогичным образом можно работать с логическими функциями большего числа переменных.

Стили представления карт Карно

Традиционно существует несколько стилей представления карт Карно. Часто в шапке и левой колонке проставляются численные значения переменных, подобно тому, как они указаны в таблице истинности (а). В этом стиле наиболее очевидно, что карта Карно является своеобразной формой представления таблицы истинности. Однако клетки карты Карно следуют в несколько ином порядке, чем строки в таблице истинности, так как в таблице истинности принято строки упорядочивать в лексикографическом нарастании двоичных чисел. Например, в карте Карно для четырёх переменных порядок следования ячеек карты и строк таблицы истинности совпадёт, если переставить местами третий-четвёртый столбцы и третью-четвёртую строки карты.

Каждая строка таблицы истинности и каждая клетка карты Карно соответствует одному слагаемому ДНФ, поэтому в шапке и левой колонке карты можно указывать вхождения переменных (прямые и инверсные), как они выглядят в СДНФ (б). Существует сокращённый вариант этого стиля представления, где во вспомогательных строках и колонках указывается, в каком виде, прямом или инверсном, представлена каждая переменная в соответствующей строке или столбце карты (в).

Наконец, в некоторых случаях на краях карты линиями указываются столбцы и строки, где соответствующая переменная представлена в прямом виде (г).

Порядок работы с картой Карно

Исходной информацией для работы с картой Карно является таблица истинности минимизируемой функции. Таблица истинности содержит полную информацию о логической функции, задавая её значения на всех возможных 2n наборах входных переменных X1 … Xn. Карта Карно также содержит 2n клеток, каждая из которых ассоциируется с уникальным набором входных переменных X1 … Xn. Таким образом, между таблицей истинности и картой Карно имеется взаимно однозначное соответствие, и карту Карно можно считать соответствующим образом отформатированной таблицей истинности.

В данном разделе в качестве примера используется функция четырёх переменных, заданная таблицей истинности, изображённой на рис. 2а. Карта Карно для той же функции изображена на рис. 2б.

Рис. 2. Пример работы с картой Карно

Принципы склейки

Прямоугольную область в карте Карно, которая состоит из 2k одинаковых значений (единиц или нулей в зависимости от того, какую форму нужно получить) будем называть склейкой, группой или областью. Распределение всех имеющихся в карте Карно нулей (единиц) по склейкам будем называть покрытием. С целью минимизации булевой функции необходимо построить такое покрытие карты Карно, чтобы количество склеек было минимальным, а размер каждой склейки максимально возможным. Для этого необходимо руководствоваться следующими правилами.

Карты с неопределёнными значениями

На практике встречаются случаи, когда при некоторых значениях аргументов булева функция не определена. Например, булева функция описывает цифровое устройство, у которого некоторые сочетания входных сигналов физически невозможны или же при некоторых значениях входных сигналов реакция устройства не имеет значения. В таких случаях говорят о «неопределённых условиях», а функция такого вида называется «частично определённой» или просто «частичной».

Такие клетки могут произвольным образом включаться в любые склейки, а также могут не включаться ни в какие склейки, то есть их по желанию можно доопределять и как 1, и как 0.

Преобразование карты в формулу

Описание

Карта Карно может быть построена для любого количества переменных, однако удобно работать при количестве переменных не более пяти. По сути Карта Карно — это таблица истинности, представленная в виде матрицы в 2-мерном виде.

Существенно, что в карте Карно соседние клетки обязательно имеют соседние, в смысле расстояния Хэмминга коды, то есть расстояние Хэмминга между соседними клетками равно 1, и различаются только состоянием — с инверсией или без, одной и только одной из переменных. Соседними клетками считаются клетки, примыкающие друг к другу стороной, также соседними клетками считаются клетки крайнего левого и крайнего правого столбцов и клетки первой и последней строк. Таком образом, карта Карно на плоскости топологически эквивалентна поверхности тора в трёхмерном пространстве, или гипертору в пространстве с размерностью на 1 больше размерности соответствующей многомерной карты Карно.

При заполнении карты на пересечении строки и столбца проставляется соответствующее значение из таблицы истинности — 0 или 1. После того как карта заполнена, приступают к минимизации.

Если необходимо получить минимальную ДНФ, то в Карте рассматриваем только те клетки, которые содержат единицы, если нужна КНФ, то рассматриваем те клетки, которые содержат нули. Сама минимизация производится по следующим правилам (на примере ДНФ).

Далее берём первую область и смотрим, какие переменные не меняются в пределах этой области, выписываем конъюнкцию этих переменных; если неменяющаяся переменная нулевая, проставляем над ней инверсию. Берём следующую область, выполняем то же самое, что и для первой, и т. д. для всех областей. Конъюнкции областей объединяем дизъюнкцией.
Например (для Карт на 2 переменные):

Для КНФ всё то же самое, только рассматриваем клетки с нулями, неменяющиеся переменные в пределах одной области объединяем в дизъюнкции (инверсии проставляем над единичными переменными), а дизъюнкции областей объединяем в конъюнкцию. На этом минимизация считается законченной. Так, для Карты Карно на рис. 1, выражение в формате ДНФ будет иметь вид:

Так же из ДНФ в КНФ и обратно можно перейти, использовав Законы де Моргана.

Примеры

Пример 1

У мальчика Коли есть мама, папа, дедушка и бабушка. Коля пойдёт гулять на улицу, тогда и только тогда, когда ему разрешат хотя бы двое родственников.

Для краткости обозначим родственников Коли через буквы:
мама — X1
папа — X2
дедушка — X3
бабушка — X4

Условимся обозначать согласие родственников единицей, несогласие — нулём. Возможность пойти погулять обозначим буквой f, Коля идёт гулять — f = 1, Коля гулять не идёт — f = 0.
Составим таблицу истинности:

Перерисуем таблицу истинности в 2-мерный вид:

Переставим в ней строки и столбцы в соответствии с кодом Грея (последний и предпоследний столбец меняют местами). Получили Карту Карно:

Заполним её значениями из таблицы истинности (первая строка не соответствует таблице истинности, так как f=0 и разрешения на гулять нет):

Минимизируем в соответствии с правилами:

= X 3 X 4 ∨ X 1 X 2 ∨ X 2 X 4 ∨ X 1 X 4 ∨ X 1 X 3 ∨ X 2 X 3

Теперь по полученной минимальной ДНФ можно построить логическую схему:

Из-за отсутствия в наличии шестивходового элемента ИЛИ, реализующего функцию дизъюнкции, пришлось каскадировать пяти- и двух-входовые элементы (D7, D8).

= ( X 1 ∨ X 2 ∨ X 3 ) ( X 1 ∨ X 3 ∨ X 4 ) ( X 2 ∨ X 3 ∨ X 4 ) ( X 1 ∨ X 2 ∨ X 4 )

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *