什么是半加器?
你可以把一个半加器理解为一个二进制的加法器。半加器里面也包含进位的功能,而且建造起来也非常方便。
我们列一张关于半加器的真值表:
a(加数)b(加数)s(和)c(进位)
0000
0110
1010
1101
当一个输入端为1时,和为1,不进位;当两个输入端为1时,和为0,进位;
当两个输入端都为0时,和为0,不进位。
这个应该很简单理解吧?半加器也就只有这四种情况,而且再说了根据加法交换律,可以说只有三种情况。
本人研究在MC中的半加器:
先来放一张图:
这两个拉杆是输入端,也就是相当于刚才真值表里的a和b。
这个是半加器的后面。左上角的红石灯表示是否进位,下面的红石灯表示和。
如果两个拉杆都为0:
那么和为0,不进位,正确。
如果有一个拉杆为1:
和为1,不进位,正确。
如果两个拉杆都为1:
和为0,进位,正确。
原理:
首先我希望阅读本章的人都有一定的数电基础。连逻辑门都不知道怎能看得懂= =
首先关于和:
两个拉杆的输入必须都不一样和才为1,如果都为1那就进位了。如果都为0那么就既不进位和也为0。再来看看刚才的真值表:
abcs
0000
0110
1010
1101
我们可以发现,a和b必须有一个是0,有一个是1,c才为1。这个是什么逻辑?对!异或门!
这是异或门的真值表:
ab输出
000
011
101
110
是不是很像呢?所以说我在计算和的时候用了异或这个逻辑门。
关于进位:
两个输入都得为1,进位才有,这个又是什么逻辑门呢?
对!与门!
这个是与门的真值表:
ab输出
000
010
100
111
两个输入都为1,输出才为1。
本人就是把这两个逻辑门相结合组成的一个半加器。