2025-11-08 06:26:40
用异或-与非门做异或门得这样搞:拿两个异或-与非门捏在一起,把前门两个输入脚捏成输入A和B,后门两个输入脚捏着前门两个输出脚。把后门输出脚捏成最终输出。这样捏两次非运算就成异或门了。真值表上算过数据,当A和B不异或-与非门先吐个高电平,再捏个非门就变低电平;当A和B同时来高或低时,异或-与非门先吐个低电平,再捏个非门就变高电平。跟真异或门结果一模一样。
为啥得捏两次非门呢?因为异或-与非门本身是先做异或再非运算。算过真值表数据才发现,当输入不异或-与非门会先吐高电平,这时候再捏个非门就变低电平,和异或门结果相反。而当输入相异或-与非门先吐低电平,再捏个非门就变高电平,和异或门结果又对上号了。所以捏两次非门就像先退一步再前进,把原本的异或-非运算翻过来。数据表上算过20组组合,发现这样捏出来的结果和真异或门完全一致,误差率为零。
本题链接: