返回第35章 半加器和全加器(2 / 2)程序员修真之路首页

算老这时候将目光放到“和”表上。

然后他看了半天,也没发现,能跟“和”表相符的门灵路。

“二进制的‘和’表,要用门灵路实现比较复杂,需要好几个步骤。”

程理开始了一连串让人眼花缭乱的操作,一个个灵路在程理手中被不断构建出来。

“首先,需要将一个‘与门’灵路和‘非门’灵路串联起来,形成一个‘与非门’灵路。”

‘与非门’灵路是衍生门灵路,是由“与门”和“非门”串联而成,这种串联形式,在逻辑运算里就是先进行“与”逻辑运算,再进行“非”逻辑运算,也就是先与后非。

因为,“与”逻辑是:

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个继灵器。

“这得花点时间,你们稍微等我一会……”

程理开始不停的忙活起来,一台这个世界最原始的灵力计算机,正在程理手中逐渐形成!

======

(这几章太难写了,我基本整个国庆假期都在找资料,没有出去玩,而是捧着几本编程的书死啃,兔子写书一向是比较严谨的。

看在兔子这么认真的份上,大家多投点推荐票给兔子吧!)