Построение логических вентилей только из вентилей И, ИЛИ и НЕ - PullRequest
0 голосов
/ 30 апреля 2011

Я делаю некоторые изменения для своих экзаменов, и один из часто возникающих вопросов - это создание логических элементов, используя только функции И, ИЛИ и НЕ. Наиболее часто встречающимися являются NAND, NOR, XOR, XNOR и функция эквивалентности.

Прав ли я, говоря, что NAND - это просто И-ворота с НЕ-воротами после него? И то же самое верно для NOR? Это кажется слишком простым!

Следующий вопрос: «Нарисуйте еще одну схему реализации функции NOR, но теперь вы можете использовать только NAND.». Я помню это, но я не могу это объяснить.

Итак, у нас есть NOR, который НЕ (A + B). Применяя к этому де Моргана, я НЕ получаю (A). НЕ (B) ... О, и тогда мы не можем использовать AND, поэтому AND = NAND и NAND ... поэтому мы получаем НЕ (НЕ (НЕ (A). НЕ (B)))? Это правильное рассуждение? Как бы вы получили любую другую функцию только в форме NAND?

Мой другой вопрос касается функций XOR, XNOR и Эквивалентности. Как вы решаете их, используя только И, ИЛИ и НЕ ворота?

Кроме того, в отношении XOR и функции эквивалентности, как бы вы ответили на этот вопрос - дайте формулу, которая показывает их отношение, то есть формула, которая показывает, как одна из этих двух функций может быть выражена через Другой.

1 Ответ

0 голосов
/ 12 апреля 2012

Вы правы относительно NAND и NOR - NAND(A,B) = (A*B)', NOR(A,B) = (A+B)'.
Чтобы реализовать NOR с NAND, вы правильно используете De-Morgan: NOR(A,B) = (A+B)' = A'*B'. Что касается остальных: A' = NAND(A,A), B' = NAND(B,B), AND(X,Y) = (NAND(X,Y))', и так получим: NAND(NAND(NAND(A,A),NAND(B,B)),NAND(NAND(A,A),NAND(B,B))).
XOR походит на неэквивалентность (это дает 1, если A не равен B, и 0, если они равны). Таким образом, XNOR подобен эквивалентности.
Кроме того: XOR(A,B) = A*B'+A'*B, XNOR(A,B) = A*B+A'*B'

Позвольте мне предложить прочитать о полных наборах операторов: например, здесь

...