帆船书会首页
|
下一页
|
回目录
|
上一页
|

《电脑普及:穿越计算机的迷雾》 第11节

作者:sholber 复制本书地址
www.fanchuanbook.com  “比特”是计算机专业里使用得比较多的术语之一,差不多在每本专业书籍里都有可能重复出现。相比之下,它的长辈“二进制”这个术语则用得越来越少。www.fanchuanbook.com
  关于二进制我们最后想说的是它的小数表示方法。象十进制一样,二进制也是可以表示小数的。如果不是这样的话,现在的计算机也许只有在梦中才会出现。毕竟,小数是很常见的,即使是到菜市场买菜,菜钱也通常都是有零有整的。你要是好好说,这零头就抹了,要是你唧唧歪歪的,这菜估计就买不成了。
  二进制小数在写法上与十进制没有什么区别,都是在整数部分和小数部分之间写一个圆点,象这样:
  11011001.101011
  要将二进制小数转换成十进制,或者把十进制转换成二进制,整数部分和小数部分都要分开进行,然后分别写在小数点的左边和右边。具体如何进行已经超出了本书的话题范围。“学计算机还要熟悉如何把一个十进制数换算成二进制?”经常有人如此质疑,语气还很严厉。不过他们的话也不是没有道理。即使是不知道如何在这两种数制之间进行换算,也不影响你继续往下阅读本书。当然,如果你对此有兴趣,希望搞清楚它们之间换算的方法,可以参阅附录Ⅰ。要是你不介意,这一章的内容就到此为止。

  我就说不该把这件事(把书的内容贴在天涯上)告诉周世峰,这不,很快就来捣乱了,还整一篇小文。不过这厮以前只看过前言部分,正文还真没有给他看过。惹大家见笑了。
  -------------------------------------------
  致 脸羞的红通通:
  兄台教训得是,我这个人,与世无争,喜欢闲云野鹤,看上去挺斯文,实则“斯文败类”(反正有人是这么说的)。在电脑版块口出不雅之词,有失体面。得罪了。改是很难了,性格使然,但是鄙人一定会多加注意。
  第三章开关与二进制

  自从学会了二进制之后,你的运算部件制造计划又开始缓慢地向前推进。当然,在这个过程中首要的问题还是解决如何方便地用电来表示具体的数。
  由于电子专家的权威性,更由于你是个聪明人,在那次和专家分别的时候你已经读懂了他的潜台词:自行其是只会给自己带来烦恼,使用二进制应该是个明智的选择。所以,尽管眼下你还有些摸不着头脑,不知道二进制会给你的运算部件制造计划带来什么,但是这总比没有任何现成的思路强。很快,你终于有了一些头绪。
  3.1 二进制仙境
  你发现因为二进制数只有0和1两个符号,所以马上想到这可以用开关来实现:当开关断开时,电流被切断,这代表0;当开关接通时,电路中有电流通过,这代表1,如图3.1所示:
  图3.1

  
  另外一种可行的方案则与此相反,用开关断开表示1,而开关接通表示0。但是对大多数人(包括我自己)来说,这会有些别扭,不太容易接受,毕竟我们已经习惯了把“没有”看成是0,所以我们不使用这种方案,尽管我们已经说过,它实际上是可行的。
  因为在大多数情况下一个真正的二进制数不仅仅只有一个0或者一个1,它可能包含了很多比特,是一连串的0或1,所以要表示一个真正的二进制数,比如101(也就是十进制的5),需要一排开关,每一个开关对应一个比特:
  图3.2
  
  这个创意非常新颖,也非常重要,所以我们应该立即将它应用到我们正在努力建造的运算部件中,如图3.3所示。尽管刚看到这幅图时很多人会出现精神恍惚的症状,但是我相信只要稍做解释大家不用吃药就能很快得到缓解,并能非常明白这个图的意思。
  图中的灰色方框通常代表一个具有某种功能的电路,在这里它代表的是我们一直努力想要建造的运算部件。之所以这样做,是因为我们正在讨论如何用开关来表示数,这是我们当前关注的焦点。况且,哎呀,现在还不知道它的内部到底如何构造,用一个方框来代表真是最好不过了。
  这个运算部件的左边和下面各有5个开关,分别用于输入两个参与运算的二进制数,这意味着它们都是5比特的。就象前面已经讲过的那样,要表示一个二进制数,只需要接通或者断开它们中的一个或多个。那么为什么在这里非得是两个5比特二进制数呢?这没有什么特别的原因,唯一的原因是我这会儿挺高兴,一高兴就用了这么多。如果我不高兴,也许我会用6个、8个甚至更多比特的二进制数。一句话,这只是一个例子。

  图3.3
  
  这幅图充分表明了二进制数之所以在电的世界里受到欢迎的原因,我相信你对它也是非常欢迎的。要在以前,你必须制作一大堆电路,为的是生成不同的电压,这还不算,为了知道生成的电压够不够数,你还得拿着电压表一遍一遍地挨个儿测量,而获得这点成就感所付出的却是满头大汗和筋疲力尽。但是现在,你只需要准备一个合适的电源和为数不多的开关就足够了。至于精度,在这里有电表示1,没有电表示零,使用多大的电压都无所谓,只要不会烧坏零件或者电着自己,你认为在这里精度会是个问题吗?

  除此之外,还有更令人感到振奋的。在前面的设计过程中,由于忙着解决如何将数送到运算部件里去,我们还没有认真研究过另外一个同样很重要的问题,那就是当运算结果出来之后我们怎样知道它是不是正确,是否是我们真正想要的。现在,由于采用了二进制,这个问题也迎刃而解了。方法出奇地简单,因为运算部件是以二进制的方式工作,它送出来的运算结果自然也是用一排导线表示的二进制数。这样,我们可以把小灯泡接在每一根输出上(让它费点儿电,毕竟人们常说只有付出才能得到回报),以此来显示这些输出的比特到底是0还是1(如图3.4)。

  图3.4
  
  这个办法真好,而且特别有意思,它使得结果能以可视的形式直接被我们用眼睛观察到。当某根导线上没有电时,与它相连的灯泡不亮,代表这一比特是0;当灯泡亮时,表明这一比特是1。如果依次记下这些比特并将其换算成十进制,我们就能知道结果到底是几,这真是再好不过了。
  看起来二进制与电学还真有着不解之缘,好象它是专门为发明电子计算机而量身定做的。
  遗憾的是这两者之间原本就毫无关联。二进制创建的时间大约在1672—1676年,发明它的是德国人莱布尼茨。莱布尼茨是伟大的哲学家和数学家,他不但是数理逻辑的开创者,还是和牛顿齐名的数学家,他们俩相互独立地创建了微积分。当然,这不是他们唯一的共同点,他们生活在同一个时代,都长着喉结,是理所当然的男人,也都很遗憾地一辈子没结婚,当了一辈子老棍。甚至到了晚年,他们也都研究宗教和神学。牛顿聪明而又有些孤僻,敏感多疑、沉闷无趣。有时候在早上醒来,把脚伸出被窝之后,会一动不动地思考上好几个小时。还有一次,他把一根大针插在自己的眼窝里想看看会发生什么,结果说来也怪,什么也没有发生。在物理学方面,他的贡献可以说是前无古人,发现了万有引力,但却无法解释地球围绕太阳运行的动因,于是他认为是上帝给了地球“最初的一击”。莱布尼茨的晚年趋于保守和无所作为,沉迷于神学和唱赞歌。尽管现在公认的是莱布尼茨使用的微积分符号要优于牛顿的,而且一直到今天都在使用,但他们在是谁先发明了微积分的问题上曾经和莱布尼茨进行过长期而又激烈的交锋,甚至波及到整个科学界,使英国和欧洲大陆的科学先驱们在很长一段时间里激烈交锋、势不两立。总之双方都为这事儿很动感情。不过后者看起来颇具高风亮节,曾经高度称赞牛顿的数学成就“比得上在他之前所有成就的总和”。除此之外,他还是个百科全书式的杰出学者,研究领域遍及数学、物理学、力学、逻辑学、生物学、化学、地理学、解剖学、动物学、植物学、气体学、航海学、地质学、语言学、法学、哲学、历史和外交等等(哎呀,光是把它们念一遍就让我喘不过气来)。

www.fanchuanbook.com
帆船书会首页
|
下一页
|
回目录
|
上一页
|
. . . . . . . . . . . . . . . . . . . . .