第28章 红石计算机:一单元:四则运算一小节:加法器&全加器
红石计算机还是比较难的,作者之前也没有基础,花了四个小时才完全弄懂其中的原理,加上文字描述晦涩的原因,我们分开讲。
这一章,我们先讲讲加法器和全加器。
加法器是计算机进行运算的基础,在计算机中,没有所谓的“减法器”“乘法器”和“除法器”,都是依靠加法器的排布进行的四则运算。
听不明白没关系,后面会明白的。
首先,我们先来说说加法器。
加法器使用二进制进行运算,也就是说,我们的加法器只有两个数字,“0”和“1”,正如十进制不会出现单独表示“十”的单个字符一样,二进制同样不会出现表示“二”的单个字符,“二”在二进制中表示为“10”。(这里可以自己去互联网找关于二进制的解释)
众所周知,红石信号与现实中的电路信号原理完全相同,也就是说我们可以用红石信号制造出现实中的电路。
那么仿照现实中的加法器,我们如下制造:
建立空间直角坐标系
黄色陶瓦:
(0,0,1)(0,0,4)(0,1,1)(0,2,2)(0,1,4)(0,3,3)(0,4,4)(—1,0,2)(—1,1,3)(—1,2,2)(—1 ,1,1)(—1,2,0)(—1,3,1)
红石放在:
(—1,0,2)(—1,2,0)(0,1,1)(0,1,4)(0,3,3)(0,4,4)的方块上
红石中继器放在:
(—1,1,1)的方块上,朝向x正半轴,档位为1档。
红石火把放在:
(0,0,1)的x负半轴上
(0,0,1)正上方
(0,0,4)的x负半轴上
(0,0,4)的正上方
(0,1,4)的y轴正半轴上
(0,2,2)的y轴正半轴上
(—1,3,1)的x轴负半轴上
(—1,1,3)的x轴正半轴上
再将(0,0,1)和(0,0,4)的y轴负半轴作为信号的输入端,这样就完成了一个加法器。
(0,4,4)的红石输出为单元内信号,(—1,3,1)的红石火把为进位信号。
也就是说,当两个输入端,有任意一个输入,也就是总表达为0001时,(0,4,4)的红石信号输出为亮,当表达式为0010时,此时表示进位,(0,4,4)的信号为暗,(—1,3,1)的信号输出为亮,最后,两个输入端都不输入信号时,两个输出端输出的信号都是暗。
亮信号表示为1,暗信号表示为0,这就实现了加法系利用二进制进行运算的基本原理。
当然,只靠加法器是无法完成复杂的运算的,所以我们就需要一个全加器。
方法很简单,只需要将两个加法器一前一后的摆放,然后将后面的加法器的进位输出连接至前面的加法器的下方的输入端,再将上方表示不进位的(0,4,4)处的信号直接连接下一个加法器的上方输入端即可。
这样就是一个全加器了,接下来,只需要将全加器左右相互联动,前者的输出再连接后者的输入,以此类推就能进行二进制计算了,计算的最大值为:
有n个全加器联动
能计算的最大值为数列为:
an=2^(n—1)
计算得数列和为:
Sn=2^n—1
本节完
(下一章讲减法单元)