Цифровые и логические устройства, страница 3

Функция

 0  0  1  1

Формула

Название

 0  1  0  1

  

          0  0  0  0

константа  0

  

          0  0  0  1

логическое умножение

  

          0  0  1  0

запрет по

  

          0  0  1  1   

просто

  

          0  1  0  0

запрет по

  

          0  1  0  1

просто

  

          0  1  1  0

  

исключающее или, xor, сумма по модулю 2, неэквивалентность

  

          0  1  1  1

логическое сложение

  

          1  0  0  0

или – не, операция Пирса

  

          1  0  0  1

эквивалентность, , если  

  

          1  0  1  0

инверсия

  

          1  0  1  1

импликация от  к

  

          1  1  0  0

инверсия 

  

          1  1  0  1

импликация от к

  

          1  1  1  0

и – не, операция Шеффера

  

          1  1  1  1

константа  1

Попробуйте, как упражнение, реализовать все эти функции с помощью операций Шеффера, Пирса и нарисовать схемы.

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

8.1.5  Переход от одной формы задания логической функции к другой.

Один переход очевиден. Если функция задана формулой, то вычислив ее значения, мы составим таблицу. Как перейти от таблицы к аналитической форме записи? Существуют два распространенных алгоритма, которые мы проиллюстрируем на примере заданной таблицей функции трех переменных:

  *
 
   

 0  0  0  0  1  1  1  1
 0  0  1  1  0  0  1  1
 0  1  0  1  0  1  0  1

 0  0  0  1  0  1  0  1

Первый алгоритм. Составление полной логической единицы заданной функции – СНДФ (совершенной нормальной дизъюнктивной формы). Выделим четыре этапа.

1. Игнорируем наборы переменных , на которых функция равна 0, и рассмотрим лишь три набора, где она равна 1.

2. Для этих наборов пишем сумму (дизъюнкцию) трех одинаковых произведений, включающих все переменные. .

3. Ставим инверсию у тех переменных, которые в рассматриваемых наборах равны 0. Получаем . Это и есть полная логическая единица (СНДФ) функции , представленная в виде суммы (дизъюнкции) частных логических единиц (минтермов). Каждая частная логическая единица равна 1 только для одного (своего) набора и равна 0 для всех остальных.

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

.

Второй алгоритм. Составление полного логического нуля заданной функции или СНКФ (совершенной нормальной конъюнктивной формы).

1. Рассматриваем только те 5 наборов, где функция равна 0.

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

.

3. Ставим инверсию у тех переменных, которые в соответствующих наборах равны 1. Получаем . Это и есть полный логический нуль функции , как произведение частных логических нулей (макстермов), каждый из которых равен 0 только для одного (своего) набора.