Карты Карно
Карта Карно для n переменных – это таблица, в которой клеток. Число строк и столбцов таблицы – это степени двойки. Каждая клетка соответствует одной из конституент единицы (нуля), т.е. одному из наборов значений переменных. Наборы расположены в карте Карно так, что соседние конституенты можно склеить. Именно, соседними считаются конституенты, расположенные в монолитных областях.
Монолитная область– это множество клеток, образующих строку, столбец, прямоугольник или квадрат, причем число строк и столбцов всякой монолитной области – это степень двойки. В частности, . Строки (столбцы), лежащие на границах карты также является соседними.
Приведем эталонные карты Карно для трех и четырех переменных. В клетках запишем наборы значений переменных, и конституенты единицы (нуля), эти клеткам соответствующие.
Эталонная карта Карно для функции трех переменных, ДНФ(табл. 4)
Таблица 4
Эталонная карта Карно для функции трех переменных, КНФ(табл. 5)
Таблица 5
Эталонная карта Карно для функции четырех переменных, ДНФ(табл. 6)
Таблица 6
1100 | 1110 | 0110 | |||
1101 | 1111 | 0111 | 0101 | ||
1001 | 1011 | 0011 | 0001 | ||
1000 | 1010 | 0010 | |||
Примеры монолитных областей.
1.
2.
3. .
Если на карте Карно закрасить монолитные области, результирующая импликанта легко выписывается.
Так, если закрасить монолитную область 2, становится видно, что после склейки в импликанте исчезнут переменные , а останется произведение .
Эталонная карта Карно для функции четырех переменных, КНФ(табл. 7)
Таблица 7
Построим карты Карно для нашей функции и определим по ним ее минимальные ДНФ и КНФ. В карте для ДНФ в клетках, соответствующих наборам, на которых функция равна 1, запишем единицы (табл. 8). В карте для КНФ в клетках, соответствующих наборам, на которых функция равна нулю, запишем нули (табл. 9). Чтобы построить минимальную ДНФ (КНФ) нужно «накрыть» клетки с единицами (нулями) минимальным числом монолитных областей максимальной площади и выписать импликанты, соответствующие выбранным монолитным областям.
Минимизация ДНФ
Таблица 8
Минимизация КНФ
Таблица 9
На карте Карно для ДНФ имеются пять монолитных областей: одна состоит из четырех клеток, четыре из двух. Этим областям соответствуют такие импликанты единицы: ; ; : ; . Чтобы “накрыть” все 8 единиц достаточно четырех монолитных областей, причем сделать это можно двумя способами, поэтому получаются две минимальные ДНФ нашей функции:
На карте Карно для КНФ также выделяются пять монолитных областей. Одна из них содержит 4 клетки, остальные - по две. Этим областям соответствуют такие импликанты нуля: ; ; ; ; . Чтобы “накрыть” все 8 нулей достаточно использовать 4 монолитные области, причем возможны 2 варианта выбора этих областей из 5 имеющихся. Всего, таким образом, строятся две минимальные КНФ данной функции:
Опубликованный материал нарушает авторские права?.