第35章 半加器和全加器
35.
在程理说完后,所有人的目光都火热起来。
“这……逻辑运算我算是看懂了,但是这逻辑运算,怎么能做出四则运算呢?”很多人都十分不解。
带着这份不解和好奇,所有人都聚精会神的看着程理演示。
于是,这个房间聚集了越来越多的人,最后甚至房间里都塞不下了,连外面通道都挤着很多慕名而来的人。
面对这么多的人,程理依然没有任何慌乱,而是按照自己的节奏,开始组建加法机起来。
然后程理还一边组建,一边对着算老讲解起来。
“为了方便讲解,这里我用‘0’这个符号代替阴,‘1’这个符号代替阳。”程理首先道。
因为这个世界没有阿拉伯数字,而程理已经习惯用阿拉伯数字,所以还是首先注明了下。
“要想通过逻辑运算,来实现加法运算,首先需要把二进制的加法运算进行分解。”
“所以,可以先来看看1位数的二进制加法。”
0+0=0
0+1=1
1+0=1
1+1=10。
这就是1位数的二进制加法,所有情况的罗列表。
比起十进制,无疑简单很多。
我们可以把上面的二进制加法表,做一点小改进,那就是在结果统一用两位数表示。
就变成了:
0+0=00
0+1=01
1+0=01
1+1=10
“这样一来,二进制数字的相加结果是两位数,分别成为“和”以及“进位”。”
程理在算老递过来的一块黑板上,写下了这个二进制加法表。
“如此,我们就可以把二进制加法表,拆分成两个表。”
第一个是‘和’表:
0+0=0
0+1=1
1+0=1
1+1=0
“可以看出,这个‘和’表,就是二进制加法表里结果的末位数拆出来后的结果。”
第二个是‘进’表:
0+0=0
0+1=0
1+0=0
1+1=1
“可以看出,这个‘进’表,就是二进制加法表里结果的首位拆出来后的结果。”
这时候算老十分敏锐的发现了,拆分后的‘进’表,跟‘与门’逻辑很像!
于是算老有些激动道。
“这个进表,跟‘与门’输出结果很像。”
‘与门’逻辑是。
两阴为阴。
两阳为阳。
一阴一阳,则为阴。
阴为0,阳为1。
所以实际上,‘与门’逻辑用0和1表示的话,就是:
0+0=0
0+1=0
1+0=0
1+1=1
而这,正是‘进’表的表现形式!
“换句话说,我们可以用‘与门’灵路来进行二进制加法计算中,进位的计算!”算老激动道。
程理心道,不愧是青灵岛上阴阳算学造诣最深的人,竟然这么快就反应过来了。
于是程理赞叹道:“没错,正是如此。”
算老这时候将目光放到“和”表上。
然后他看了半天,也没发现,能跟“和”表相符的门灵路。
“二进制的‘和’表,要用门灵路实现比较复杂,需要好几个步骤。”
程理开始了一连串让人眼花缭乱的操作,一个个灵路在程理手中被不断构建出来。
“首先,需要将一个‘与门’灵路和‘非门’灵路串联起来,形成一个‘与非门’灵路。”
‘与非门’灵路是衍生门灵路,是由“与门”和“非门”串联而成,这种串联形式,在逻辑运算里就是先进行“与”逻辑运算,再进行“非”逻辑运算,也就是先与后非。
因为,“与”逻辑是:
0+0=0
0+1=0
1+0=0
1+1=1
将这个逻辑运算结果,再全部用“非”逻辑运算一次,就会得到。
0+0=0→1
0+1=0→1
1+0=0→1
1+1=1→0
而这个,就是与非门的输出结果。
“这个‘与非门’的输出结果,跟‘和’表还是不符,所以我们还需要进一步堆砌。”
“所以,接下来,我们将‘与非门’灵路和‘或门’灵路进行并联……”
“然后,将并联后的灵路,再和一个‘与门’串联起来。”
程理又将灵路进一步拼接。
“与非门”和“或门”并联后,就会得到两个输出结果。
再将这个并联后的灵路和一个“与门”串联,那么相当于“与非门”和“或门”的输出结果,变成了“与门”灵路的输入数据。
我们已经知道:
“与非门”的输出结果为:1、1、1、0。
“或门”的输出结果为:0、1、1、1。
将这两个输出结果,作为输入数据,经由1次“与门”逻辑计算的话,就会变成。
1+0=0
1+1=1
1+1=1
0+1=0
“而,0、1、1、0,就是我们想要的‘和’表结果!”
“所以,只要将一个‘与非门’和一个‘或门’并联后,再和一个‘与门’串联,就可以得到一个二进制加法所需要的‘和’表的结果!”
“而这个能得出二进制加法‘和’表结果的特殊灵路,也有个专门的称呼,叫做‘异或门’灵路!”
在程理掷地有声的话语结束后,现场所有人都鸦雀无声,场上一片寂静,所有人都被深深震撼到了。
逻辑的魅力,第一次在这个世界大放异彩。
现场的人,都是有一定阴阳算学造诣的人,所以都能从程理刚演示的繁复操作中,感觉到无比高深的内在道理!
于是,一时间,每个人都陷入深深的思索中无法自拔。
程理并没有在乎那么多,而是继续制造自己的加法机。
这时候,我们下一步工作就是,把‘与门’和‘异或门’并联起来。”
“‘与门’输出进位结果,‘异或门’输出和结果。”
“这样一来,我们就得到了一个半加器。”
“一个半加器,只能进行1位数的二进制加法计算,而且没办法扩展。显然实用性很低,我们还需要进一步改良一下。”
程理一边说着,又一边进行更复杂的灵路搭建操作。
渐渐的,地上的灵路越来越复杂和庞大,不知不觉居然有几十个基本逻辑门灵路,被程理用各种方式串联并联起来,让周围人已经看得有些眼花缭乱起来了。
“嗯嗯,这样将两个半加器连接起来,再加上一个进位输入,我们就得到了一个全加器。”
“一个全加器可以进行1位二进制加法运算,但比起半加器,全加器有了扩展空间。
“只要将2个全加器这样连接在一起,就可以计算2位二进制计算……”
“所以,接下来就是数量的堆叠了,想要实现8位数的二进制计算,就一共需要搭建8个全加器,144个继灵器。
“这得花点时间,你们稍微等我一会……”
程理开始不停的忙活起来,一台这个世界最原始的灵力计算机,正在程理手中逐渐形成!
======
(这几章太难写了,我基本整个国庆假期都在找资料,没有出去玩,而是捧着几本编程的书死啃,兔子写书一向是比较严谨的。
看在兔子这么认真的份上,大家多投点推荐票给兔子吧!)
在程理说完后,所有人的目光都火热起来。
“这……逻辑运算我算是看懂了,但是这逻辑运算,怎么能做出四则运算呢?”很多人都十分不解。
带着这份不解和好奇,所有人都聚精会神的看着程理演示。
于是,这个房间聚集了越来越多的人,最后甚至房间里都塞不下了,连外面通道都挤着很多慕名而来的人。
面对这么多的人,程理依然没有任何慌乱,而是按照自己的节奏,开始组建加法机起来。
然后程理还一边组建,一边对着算老讲解起来。
“为了方便讲解,这里我用‘0’这个符号代替阴,‘1’这个符号代替阳。”程理首先道。
因为这个世界没有阿拉伯数字,而程理已经习惯用阿拉伯数字,所以还是首先注明了下。
“要想通过逻辑运算,来实现加法运算,首先需要把二进制的加法运算进行分解。”
“所以,可以先来看看1位数的二进制加法。”
0+0=0
0+1=1
1+0=1
1+1=10。
这就是1位数的二进制加法,所有情况的罗列表。
比起十进制,无疑简单很多。
我们可以把上面的二进制加法表,做一点小改进,那就是在结果统一用两位数表示。
就变成了:
0+0=00
0+1=01
1+0=01
1+1=10
“这样一来,二进制数字的相加结果是两位数,分别成为“和”以及“进位”。”
程理在算老递过来的一块黑板上,写下了这个二进制加法表。
“如此,我们就可以把二进制加法表,拆分成两个表。”
第一个是‘和’表:
0+0=0
0+1=1
1+0=1
1+1=0
“可以看出,这个‘和’表,就是二进制加法表里结果的末位数拆出来后的结果。”
第二个是‘进’表:
0+0=0
0+1=0
1+0=0
1+1=1
“可以看出,这个‘进’表,就是二进制加法表里结果的首位拆出来后的结果。”
这时候算老十分敏锐的发现了,拆分后的‘进’表,跟‘与门’逻辑很像!
于是算老有些激动道。
“这个进表,跟‘与门’输出结果很像。”
‘与门’逻辑是。
两阴为阴。
两阳为阳。
一阴一阳,则为阴。
阴为0,阳为1。
所以实际上,‘与门’逻辑用0和1表示的话,就是:
0+0=0
0+1=0
1+0=0
1+1=1
而这,正是‘进’表的表现形式!
“换句话说,我们可以用‘与门’灵路来进行二进制加法计算中,进位的计算!”算老激动道。
程理心道,不愧是青灵岛上阴阳算学造诣最深的人,竟然这么快就反应过来了。
于是程理赞叹道:“没错,正是如此。”
算老这时候将目光放到“和”表上。
然后他看了半天,也没发现,能跟“和”表相符的门灵路。
“二进制的‘和’表,要用门灵路实现比较复杂,需要好几个步骤。”
程理开始了一连串让人眼花缭乱的操作,一个个灵路在程理手中被不断构建出来。
“首先,需要将一个‘与门’灵路和‘非门’灵路串联起来,形成一个‘与非门’灵路。”
‘与非门’灵路是衍生门灵路,是由“与门”和“非门”串联而成,这种串联形式,在逻辑运算里就是先进行“与”逻辑运算,再进行“非”逻辑运算,也就是先与后非。
因为,“与”逻辑是:
0+0=0
0+1=0
1+0=0
1+1=1
将这个逻辑运算结果,再全部用“非”逻辑运算一次,就会得到。
0+0=0→1
0+1=0→1
1+0=0→1
1+1=1→0
而这个,就是与非门的输出结果。
“这个‘与非门’的输出结果,跟‘和’表还是不符,所以我们还需要进一步堆砌。”
“所以,接下来,我们将‘与非门’灵路和‘或门’灵路进行并联……”
“然后,将并联后的灵路,再和一个‘与门’串联起来。”
程理又将灵路进一步拼接。
“与非门”和“或门”并联后,就会得到两个输出结果。
再将这个并联后的灵路和一个“与门”串联,那么相当于“与非门”和“或门”的输出结果,变成了“与门”灵路的输入数据。
我们已经知道:
“与非门”的输出结果为:1、1、1、0。
“或门”的输出结果为:0、1、1、1。
将这两个输出结果,作为输入数据,经由1次“与门”逻辑计算的话,就会变成。
1+0=0
1+1=1
1+1=1
0+1=0
“而,0、1、1、0,就是我们想要的‘和’表结果!”
“所以,只要将一个‘与非门’和一个‘或门’并联后,再和一个‘与门’串联,就可以得到一个二进制加法所需要的‘和’表的结果!”
“而这个能得出二进制加法‘和’表结果的特殊灵路,也有个专门的称呼,叫做‘异或门’灵路!”
在程理掷地有声的话语结束后,现场所有人都鸦雀无声,场上一片寂静,所有人都被深深震撼到了。
逻辑的魅力,第一次在这个世界大放异彩。
现场的人,都是有一定阴阳算学造诣的人,所以都能从程理刚演示的繁复操作中,感觉到无比高深的内在道理!
于是,一时间,每个人都陷入深深的思索中无法自拔。
程理并没有在乎那么多,而是继续制造自己的加法机。
这时候,我们下一步工作就是,把‘与门’和‘异或门’并联起来。”
“‘与门’输出进位结果,‘异或门’输出和结果。”
“这样一来,我们就得到了一个半加器。”
“一个半加器,只能进行1位数的二进制加法计算,而且没办法扩展。显然实用性很低,我们还需要进一步改良一下。”
程理一边说着,又一边进行更复杂的灵路搭建操作。
渐渐的,地上的灵路越来越复杂和庞大,不知不觉居然有几十个基本逻辑门灵路,被程理用各种方式串联并联起来,让周围人已经看得有些眼花缭乱起来了。
“嗯嗯,这样将两个半加器连接起来,再加上一个进位输入,我们就得到了一个全加器。”
“一个全加器可以进行1位二进制加法运算,但比起半加器,全加器有了扩展空间。
“只要将2个全加器这样连接在一起,就可以计算2位二进制计算……”
“所以,接下来就是数量的堆叠了,想要实现8位数的二进制计算,就一共需要搭建8个全加器,144个继灵器。
“这得花点时间,你们稍微等我一会……”
程理开始不停的忙活起来,一台这个世界最原始的灵力计算机,正在程理手中逐渐形成!
======
(这几章太难写了,我基本整个国庆假期都在找资料,没有出去玩,而是捧着几本编程的书死啃,兔子写书一向是比较严谨的。
看在兔子这么认真的份上,大家多投点推荐票给兔子吧!)