问题如下:仅使用 获得函数 H = X + Y
您不能使用 X 和 Y 的补集作为输入。尽可能少地使用这些逻辑门。
我最终找到答案是
但那是经过反复试验的。有没有好的方法来解决这个问题和类似的问题?
记下评论并使用德摩根定律,A NAND ~B = ~(A) 或 B。或门可以表示为 (~(~A 或 B) 或 B)=(A NAND NOT B) NAND NOT B(解决方案再次使用德摩根定律)其中 ~ 是非门。这给出了您所获得的最终解决方案。基本上,您可以将原始逻辑门简化为更简单的方程,并使用该方程获得所需的方程。要验证 (~(~A 或 B) 或 B)=(A NAND NOT B) NAND NOT B,有几种方法可以实现。一种是使用真值表,另一种是使用德摩根定律。
| A | B | A or B| (A NAND NOT B) NAND NOT B |
|---|---|-------|-------------------------- |
|0 |0 |0 |(0 Nand 1) Nand 1 = 1 nand 1 =0|
|0 |1 |1 |(0 Nand 0) Nand 0 = 1 nand 0 =1|
|1 |0 |1 |(1 Nand 1) Nand 1 = 1 nand 1 =1|
|1 |1 |1 |(1 Nand 0) Nand 0 = 1 nand 0 =1|