第28部分(第1/4 页)
身。此外,假若我们认定这个故事天经地义,那么我们便可对全能自动电脑做出这样的“解释”:由于计算机设有可用来查数的手指,所以不得不运用一种更简单的方法。这种更简单的体制,其名称就是“二重”或“二进”制。世界上大多数数目现在都正被翻译进这种体制,以求被输入、被消化在电脑中。
二进位制恪守十进位制的所有规则。它属于定位性的;它可以表示任何有限数目;它可以用来加、减、乘、除,求指数,以及人类及全能自动电脑所知的任何代数方程。惟一的差别是:它的基数是2,不是10。它削去十进位数中的10个基数中的8个——2,3,4,5,6,7,8和9——只剩下0和1。
当然了,你是可以这样来算数的。1是一;10是二;11是三;100是四;101是五;110是六;111是七;1000是八;1001是九;1011是十;如此类推。用它可加可减:
四100
加三11
——————
等于七111
用它可乘可除:
六110
被三除11
——————
等于二10
你可以不费吹灰之力算出来,而无需背诵乘法口诀。这样使你的青春时光自由自在,在夜晚尽情欣赏棒球比赛,或者访朋问友。
回过头来再看一下伊万的俄国式乘法;让我们以稍微不同的方式再重新运算一遍。让我们将两列数目都二分,左右都是这样。我们不再削掉数字,而要在奇数边上注上“1”,在偶数边写上“0”,这样:
871931
431460
211231
100111
5151
2020
1111
现在,你可能还不知道,你做出的结果是什么样子——伊万肯定也闻所未闻——实际上你已经将两个十进位数转化成二进位数的对等物了。从下向上读,1010111是二进位中的87,1011101是二进位中的93。
要理解这样做的意思,就要牢记我们是如何将一个十进位数分开的。一个二进位数也可以分成同样的份数。惟一的区别是,份数是2的乘方相乘,而不是10的乘方相乘。这样的话,1010111,就是下边说法的速记形式:
1*2^6=64
0*2^5=0
1*2^4=16
0*2^3=0
1*2^2=4
1*2^1=2
1*2^0=1
————
87
这就是我们刚才提到的原来的数字形式。
如果你将87和93这样的数字输入全能自动电脑,它的消化功能就会给搞乱——实际上,除非这些数字先被消化,否则它就无法消受。所以你必须像我们上面所做的那样,先将它们转化成二进位数目(“数字”或“数点”)。诸如1010111和1011101这样的二进位数,全能自动电脑处理得非常好。想做乘法吗?毫无困难。全能自动电脑,依其电子途径,会如是而行:
1010111
*1011101
———————
1011111
0
1010111
1010111
1010111
0
1010111
———————
1111110011011
这看起来叫人害怕,因为人们对这种东西很不熟悉;但是,得出的结果仍然跟87*93是一样的;它是下式的速记形式:
1*2^124096
1*2^112048
1*2^101024
1*2^9512
1*2^8256
1*2^7128
0*2^60
0*2^50
1*2^416
1*2^38
0*2^20
1*2^12
1*2^01
——————
8091
请看,这多么简洁!尽管数目很大,但可以看到处理时又变得多么快