为什么费曼将这个可逆门称为NAND?

时间:2013-11-09 20:56:46

标签: boolean-logic

寻找事物的乐趣的第2章中,Richard P. Feynman讨论了与构建非常小的计算机相关的物理限制。他介绍了可逆逻辑门的概念:

  

Bennett以及独立于Fredkin的伟大发现是,可以使用不同类型的基本门单元(即可逆门单元)进行计算。我已经说明了他们的想法 - 用一个可称为可逆NAND门的单元。

他继续描述他所谓的可逆NAND门的行为:

  

它有三个输入和三个输出。在输出中,两个A'和B'与两个输入A和B相同,但第三个输入以这种方式工作。除非A和B都是1,否则C'与C相同,在这种情况下,C改变C是什么。例如,如果C为1则更改为0,如果C为0则更改为1 ---但只有当A和B都为1时才会发生这些更改。

这本书包含了一个可逆门的图表,我已在下面附上(link):

enter image description here

经典的,不可逆的与非门的真值表(输入:A,B;输出:C)如下:

enter image description here

如果我理解Feynman的描述,Feynman所说的可逆NAND门的真值表应该如下:

enter image description here

然而,我不明白为什么费曼称他的门是NAND。一个人应该如何用他的门导出NAND(A,B)的结果?在我看来,NAND(A,B)不能直接从三个输出(A',B',C')中的任何一个输出。 NAND(A,B)由XOR(C,C')给出,但这需要额外的XOR门。那么为什么费曼把他的门称为与非门?

2 个答案:

答案 0 :(得分:3)

正如其他人所提到的,当输入C = 1时,输出C'= A NAND B。

然而,关键是没有信息被销毁。给定输出,可以确定输入。将其与正常的与非门对比,其中仅在给定输出的情况下不能确定输入;信息被破坏了。使用可逆的与非门,不会丢失信息。没有信息丢失是重要的,因为理论上可以没有能量损失

答案 1 :(得分:1)

如果你设置C,那么C'是A NAND B。

(我没有读过这篇论文,但我猜测C是使门“可逆”的原因 - 用C设置它是一个与非门,用C清除它是一个AND门。)