- •Практическая работа № 8
- •Повторить –
- •Краткие теоретические сведения Повторим минимизацию логических функций методом карт Карно-Вейча
- •Минимизация логических функций методом карт Вейча
- •Минимизация функций с использованием карт Карно
- •Общий принцип минимизации функции по методу Квайна
- •Алгоритм минимизации
- •II этап.
- •Общий принцип минимизации функции по методу Квайна-МакКласки
- •Порядок выполнения работы
- •Контрольные вопросы
- •II этап.
- •II этап.
- •Метод Квайна – Мак-Класки
- •Пример 3.1
- •Решение
- •Пример 3.2
- •Решение
- •Решение
Минимизация логических функций методом карт Вейча
Метод Квайна имеет четко формулируемые правила проведения отдельных операций. Благодаря этому он может быть применен для минимизации функций с использованием ЭВМ в тех случаях, когда минимизируемая функция достаточно сложна (содержит большое число аргументов и каноническая форма имеет большое число членов). Однако для минимизации функции ручным способом (без ЭВМ) этот метод оказывается весьма трудоемким. Трудоемкость метода Квайна связана с необходимостью попарного сравнения всех членов выражения для выявления склеиваемых членов.
Метод минимизации функции с помощью карт Вейча обеспечивает простоту получения результатов. Он используется при минимизации относительно несложных функций (с числом аргументов до пяти) ручным способом. В отличие от метода Квайна этот метод требует изобретательности и не может быть применен для решения задачи минимизации с помощью ЭВМ. Карта Вейча представляет собой определенную форму таблицы истинности. Таблица 2. является картами Вейча для функций соответственно двух (а), трех (б), четырех (в) аргументов.
Каждая клетка карты соответствует некоторому набору значений аргументов. Этот набор аргументов определяется присвоением значения лог. 1 буквам, на пересечении строк и столбцов которых расположена клетка. Так, в карте функций четырех аргументов клетки первой строки соответствуют следующим комбинациям значений аргументов:
1-я
клетка
2-я
клетка
3-я
клетка
4-я
клетка
Число клеток карты равно числу всех возможных наборов значений аргументов 2" ( п — число аргументов функций ). В каждую из клеток карты записывается значение функции на соответствующем этой клетке наборе значений аргументов. Пусть функция задана таблицей истинности в форме, которая использовалась ранее (табл. 2). Таблица истинности этой функции в форме карты Вейча представлена табл. 3.
Х1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
Х2 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
Х3 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
F(Х1, Х2 ,Х3) |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
Как видим, карта Вейча определяет значения функции на всех возможных наборах значений аргументов и является таблицей истинности. Карты Вейча компактны, но главное их достоинство состоит в следующем. При любом переходе из одной клетки в соседнюю вдоль столбца или строки изменяется значение лишь одного аргумента функции. Следовательно, если в паре соседних клеток содержится 1, то над соответствующими им членами канонической формы может быть проведена операция склеивания. Таким образом, облегчается поиск склеиваемых членов.
Сформулируем правила получения МДНФ функций с помощью карт Вейча.
Все клетки, содержащие 1, объединяются в замкнутые области. При этом каждая область должна представлять собой прямоугольник с числом клеток 2к, где к = 0, 1, 2,... Значит, допустимое число клеток в области 1, 2, 4, 8,... Области могут пересекаться и одни и те же клетки могут входить в разные области. Затем проводится запись выражения МДНФ функции. Каждая из областей в МДНФ представляется членом, число букв в котором на к меньше общего числа аргументов функции n (n-k). Каждый член МДНФ составляется лишь из тех аргументов, которые для клеток соответствующей области имеют одинаковое значение (без инверсии либо с инверсией).
|
|
|
|
|
|
|
|
|||||||
|
1 |
1 |
0 |
0 |
|
|
|
1 |
1 |
0 |
0 |
|||
|
0 |
1 |
1 |
0 |
|
|
|
0 |
1 |
1 |
0 |
|||
Таким образом, при охвате клеток замкнутыми областями следует стремиться, чтобы число областей было минимальным (при этом минимальным будет число членов в МДНФ функции), а каждая область содержала возможно большее число клеток (при этом минимальным будет число букв в членах МДНФ функции).
Рассмотрим
минимизацию с помощью карты Вейча
функции трех аргументов, представленной
табл. 4. Все клетки, содержащие 1,
охватываются двумя областями. В
каждой из областей 21
клеток, для них n-k
=3-1=
2, и эти области в МДНФ будут представлены
членами, содержащими по две буквы. Первой
области соответствует член
(аргумент
х3
здесь не присутствует, так как для одной
клетки этой области он имеет значение
без инверсии, для другой — с инверсией);
второй области соответствует член
.
Следовательно, МДНФ функции
Рассмотрим пример минимизации функции четырех аргументов, заданной табл. 1.28. Первая и четвертая области имеют по две клетки, для них n-k= 4 -1 = 3. Эти области в МДНФ будут представлены членами, содержащими по три буквы. Вторая и третья области содержат по четыре клетки и в МДНФ выражаются членами, содержащими по две буквы (n-k = 4 -2 = 2). Минимальная ДНФ функции
При построении замкнутых областей допускается сворачивание карты в цилиндр с объединением ее противоположных граней. В силу этого крайние клетки строки или столбца таблицы рассматриваются как соседние и могут быть объединены в общую область. Иллюстрацию этого приема проведем на примере функции, представленной табл. Минимальная ДНФ функции
|
|
|
|
|
|
|
|
|
||||||||||
|
1 |
1 |
1 |
0 |
|
|
|
0 |
1 |
1 |
0 |
|
||||||
0 |
1 |
1 |
0 |
|
|
0 |
0 |
0 |
0 |
|
||||||||
|
0 |
0 |
1 |
1 |
|
|
1 |
1 |
0 |
1 |
||||||||
0 |
0 |
1 |
0 |
|
|
1 |
1 |
1 |
1 |
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||
В
силу допустимости такого сворачивания
карты вдоль горизонтальной и
вертикальной осей, например, клетки,
расположенные в четырех углах карты
функции четырех переменных, оказываются
соседними и могут быть объединены в
одну область. Покажем это на примере
минимизации функции, заданной табл.
Минимальная ДНФ функции
|
|
|
|
|
|
|
|
|
||||||||||
|
1 |
0 |
1 |
1 |
|
|
|
1 |
0 |
1 |
1 |
|
||||||
0 |
0 |
1 |
1 |
|
|
0 |
0 |
0 |
0 |
|
||||||||
|
0 |
0 |
1 |
1 |
|
|
0 |
1 |
1 |
0 |
||||||||
1 |
0 |
1 |
1 |
|
|
0 |
1 |
1 |
0 |
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||
Для получения МКНФ функции замкнутыми областями охватываются клетки с нулевыми значениями функции, и при записи членов логического выражения берутся инверсии аргументов, на пересечении которых находятся области. Так, для функции, приведенной в табл. МКНФ
