书城计算机网络计算机与人工智能(科学新知丛书)
16436000000001

第1章 先驱者的探索(1)

美国畅销书作家西尔顿在一部小说中讲述了一个与计算机有关的小故事,这个故事是这样的:

有一位叫做杰夫的人,受到一伙富人的歧视和欺骗,他决心报复这伙歧视他的富人。杰夫精心设计了一个圈套,让那伙富人相信,他正准备向别人转让一种叫“sucaba”的便携式计算机,大量生产这种计算机可以获得很高的利润。那伙富人迫不及待地找到杰夫签订了转让“sucaba”样机的合同,杰夫在合同中称“sucaba”“经广泛检测使用,具有价廉、无故障、较目前市场上销售的任何一种计算机都更为节能的特点,在10年内无需保养和更换任何部件”。当那伙富人小心翼翼地打开十分严实而华丽的包装取出样机时,发现“sucaba”并不是什么新鲜玩艺,而是中国的珠算盘。

其实,在这场骗局中,杰夫只是施了一点小小的计谋,那就是他把英文的abacus(珠算盘)倒过来写成了“sucaba”。至于他所说的这种“便携式计算机”的各种特点,倒是的确一点也不失真。

在古代,我国的珠算盘是最先进的计算工具。就是在现代微型电子计算机和袖珍计算器已经十分普及的时候,珠算盘也是许多会计人员得心应手的工具。这表明东方古老的珠算盘具有独特的魅力。

可以说,珠算盘已经基本具备了现代计算机的主要结构特征:人拨动算盘珠,就是向算盘输入数据,并且存储在算盘上;珠算口诀起着程序控制的作用,而算盘起着运算器的作用;运算结果显示在算盘上,需要的话,自然也可以输出来,抄录到纸上;整个过程的控制,是由人脑掌握的。现代的计算机,正是由存储器、运算器、控制器和输入、输出设备等硬件及指令系统等软件构成的。

但是,珠算盘毕竟是手动的,当面临十分繁琐复杂的计算时,它的功能和速度就显得很不适应。发明高速、精确的计算机器,把人类从繁琐的计算中解放出来,是人类孜孜以求的目标。

伟大的发明产生于时代的需求。欧洲文艺复兴以后,天文和航海事业的发展把大量的计算问题摆到了科学家面前。尤其是在16世纪中叶发生“哥白尼革命”以后,天文学家们必须为改写了的世界图景重新进行大量的天文观测和计算,他们不得不把大部分时光耗费在繁琐、枯燥而且难免出错的计算之中。苏格兰男爵纳皮尔决心帮助天文学家简化繁杂的计算工作,1594年前后他发明了对数方法。一般来说,两组数相加(或相减)比两组数相乘或相除容易计算一些,运用对数方法就可以把乘法(或除法)转换成加法(或减法),这是计算方法的一个重大的进步。英国数学家和天文学家布里格斯花了十几年时间,在1624年发表了世界上第一部常用对数表。正如后来一位科学家所说:“我们以耗费自己生命的工作延长了天文学家们的生命。”

如果说对数是一种计算方法的发明,那么,英国人甘特在1620年根据对数原理制成的计算尺,就是一种计算工具的发明。利用这种可以滑动的直尺,可以方便地进行乘、除和三角函数的计算。直至20世纪60—70年代,经过改进的计算尺还是不少工程技术人员随身携带的计算工具。

计算尺和珠算盘是两种计算工具,它们之间的数的表示方法是不同的。计算尺是用直尺长度表示数,长度这个物理量是连续的变化的;珠算盘是用一颗一颗的算盘珠表示数,算盘珠表现为一个一个的分离状态,它们代表了两种不同类型的计算工具。计算机产生之后也分成了两种类型,它们的工作原理与计算尺和珠算盘相同:用连续变化的物理量表示数的一类计算机,称为模拟计算机;用分离的状态表示数的一类计算机,称为数字计算机,它们有着各自的发展历程。

帕斯卡的故事

近代发明数字计算机的努力是从法国的帕斯卡(1623—1662年)开始的。1623年,一个聪明的男孩出生在法国,他来到这个世界上仅仅3年,母亲便离开了人世,父子俩相依为命,感情深厚。

帕斯卡的父亲是一位税收员,由于西方的文艺复兴造成了社会的思想活跃、科技进步、经济繁荣、商业发展,税收工作成了繁忙、复杂、劳顿不堪的职业。少年帕斯卡看到父亲白天十分劳累,晚上回到家还经常要进行繁重的计算,十分辛苦,决心找一种办法来帮助父亲。几年中,这位未来的数学家废寝忘食,做过多种尝试都没有取得成功,但是他并没有灰心,仍然继续努力。一个偶然的机会,他从机械钟中受到启发,齿轮也能记数!他终于悟出了用齿轮自动进位的思路。1642年,19岁的帕斯卡终于发明了一种可以进行加、减运算的机械计算机。它运用齿轮啮合原理,在某个数位上每加1,对应的齿轮就转1圈,转满10圈后就带动高位的齿轮转1圈,这样就实现了进位。这种后来被称为“帕斯卡加法器”的计算机,实际上包含了后来广泛使用的手摇计算机的基本原理。此后,人们逐步完善发展成了许多种这类计算机,后人统称这类计算机为帕斯卡机。“帕斯卡加法器”于1649年获得皇家专利。至今严肃的科学史书、百科全书等叙述这一时期时,都毫无例外地把帕斯卡的名字摆在显要位置上,这使得帕斯卡成了世界公认的机械计算机的鼻祖。

帕斯卡并不是世界上第一台数字计算机,什卡尔机是数字计算机的始祖。

德国人什卡尔与开普勒的关系很密切,1958年是帕斯卡机诞生的317年,有人从开普勒的档案中,找到了什卡尔在1623年给开普勒的信,在信中他提出了机械计算机的设计和原理图。

随后在斯图加特图书馆的档案库,找到了记载什卡尔机的文献。什卡尔机比帕斯卡机早了18年,其模型除了具有加法、减法功能外,还可以进行乘、除运算,并能记录中间结果,只是长期不为世人所知。现在什卡尔机的模型仍然存放在开普勒博物馆中。

17世纪,帕斯卡机、什卡尔机模型的诞生,使人类计算工具的发展进入了一个新的历史时期。

莱布尼茨与康熙皇帝

17世纪的德国数学家、物理学家莱布尼茨(1646—1716年)是一位最著名的机械计算机设计大师。他在大学学习的是法律,对数学、物理、哲学、历史学、语言学都有广泛的兴趣和精深的造诣,后来因独立地发明了微积分而与同时代的牛顿齐名。

帕斯卡发明加法器时,莱布尼茨还没有出世。当年轻的莱布尼茨了解了帕斯卡加法器的情况后,立即敏锐地认识到,使数的处理实现机械化、自动化将对社会的进步产生重大的影响,他决心改进帕斯卡的发明。在旅居巴黎期间,他特意聘请了著名的机械专家协助工作。他在研究帕斯卡机的基础上,直接提出了机械乘法的设计思想,把机器分为可动与不动两部分。同时,他受到类似我国汉代记里鼓车的记里程仪器的启示,发明了一种叫“梯形轴”的结构,他在1673年研制出了可以进行四则运算的机械计算机,这就是著名的莱布尼茨机。他的发明几百年间为许多计算机设计者所采用,对世界许多国家的计算机发展都有举足轻重的影响。

莱布尼茨对计算机发展所做的更重要的贡献,是他系统地给出了二进制的算术运算法则和最早提出了数理逻辑的思想。关于二进制,莱布尼茨明确指出中国古代的八卦是世界上最早的二进制表述。八卦中的阳爻(—)相当于二进制中的“1”,阴爻(--)相当于二进制中的“0”,乾、震、坎、兑、艮、离、巽、坤八卦则分别对应二进制中0~7的8个自然数。