莱布尼茨认为中国八卦的思想相当深刻、巧妙,他对这个文明古国产生了极大的兴趣。为了能进一步了解中国富于哲理的思想宝库和古代技术的发展,他主动与能够接触康熙皇帝的法国传教士交往,并把自己制造的计算机赠送给康熙皇帝,希望增进东西方科学技术和文化思想的交流。然而在封建桎梏下,即使比较开明的康熙皇帝也不免把技术看作下等人的事,他把莱布尼茨视为工匠,对其友好的表示不予理睬。莱布尼茨带着遗憾走入天国,他的计算机也被视同贡品,收入深宫密殿,供王妃玩赏消遣,至今还保存在故宫博物院。一次发展中国计算机技术的机会就这样轻易地失去了。
莱布尼茨以极大的热情致力于“建立一种普遍代数,在其中推理的正确性将化归于计算”,他的这一思想开创了数理逻辑的研究。1854年,英国数学家布尔在《思维逻辑研究》一书中成功地将数理逻辑归结为一种代数演算,建立了后人所谓的“布尔代数”。这是继莱布尼茨之后,数理逻辑研究中第一个系统性成果。并非偶然的是,布尔代数中只取0和1两个值,正好是一种二进制代数。莱布尼茨倡导的二进制和逻辑代数,为现代计算机设计准备了必要的数学工具。在进入20世纪以后获得蓬勃发展的数理逻辑,则成为计算机的数学基础。
莱布尼茨的天才实践,对人类计算工具的发展做出了杰出的贡献,而其进行国际技术交流和东、西方文化互补的思想,不仅促进科学技术的进步,而且在极其广泛的领域所产生的积极影响经久不衰。
巴贝奇的故事
计算机的发展非常迅速,在其发展阶段的早期,英国的巴贝奇(CharlesBabbage,1792—1871年)做出了重大的贡献。
1801年,巴贝奇进入剑桥大学学习。剑桥大学是英国最古老的和最负盛名的高等学府之一,近代科学的巨人牛顿曾经是这所大学的学生和数学系教授。17世纪末期,牛顿和莱布尼茨各自独立地发明了微积分,他们发明的微积分在形式上各有特点,牛顿把自己的发明称为“流数术”。1716年和1727年,莱布尼茨和牛顿先后去世,但英国数学界却为微积分的发明权问题展开了激烈的争论。英国数学教育界把牛顿奉为神圣的偶像,偏执地拒绝了解欧洲大陆数学的新进展,也拒绝对牛顿的流数术做任何改进,这就使英国的数学在牛顿逝世后的近百年间落在了欧洲大陆的后面。年轻的剑桥大学学生巴贝奇勇敢地举起了革新旗帜,向弥漫在校园里的那种封闭、保守的传统提出了挑战。1812年,20岁的卡尔·巴贝奇团结一批年轻的大学生,成立了旨在介绍欧洲大陆数学成就的学术团体“分析学会”,巴贝奇是学会的主要领导者之一。
巴贝奇具有革新精神,这表现在他不惜倾家荡产而为计算机发明活动苦苦奋斗中。在剑桥求学期间,巴贝奇发现由人工计算出来的航海表有许多错误,于是便萌生了制造一台自动计算制表机的强烈愿望,但他没有简单地在帕斯卡、莱布尼茨的前人走过的发明路上接力,而是另辟蹊径,选择了一个新的起点。当时,法国人刚刚高效率地完成了几乎所有数学用表的重新计算工作,并不是因为他们有先进的计算机,而是因为他们将大量的计算人员重新进行了巧妙的组合。法国人把全部人员分成三组,第一组由5~6名数学家组成,负责提出公式;第二组由10来名专业人员按公式算出为数不多的关键数据,并编制出简明的演算格式;第三组有100多人,他们只需将第二组算出的关键数据作为初始数据,按演算格式一步一步地进行简单而重复的四则运算。这种流水线式的作业,实际上是一个程序控制计算机的人力模型,思维活跃的巴贝奇从中受到启发。10年之后的1822年,巴贝奇完成了一台利用多项式数值差分规律进行计算的“差分机”模型。
差分机与多项式数值差分原理相关,那么什么是多项式数值差分原理呢?让我们来看一个二次多项式f(x)=x2+x+1,这样根据上表已列出的数据,我们在只用加法的情况下,就可以求出当x=4时,△yk=6+2=8,yk=13+8=21;再继续往下算,当x=5时,△yk=8+2=10,yk=21+10=31……依此类推,可以按这张表格一直算下去。也就是说,根据数值的差分规律,实际上只要先求出很少几个初始数据(比如xk=1那一行的3个数据),就可以把本来需要每次都做乘方运算的多项式值,用简单的、机械式重复的加法运算求出来。巴贝奇的差分机就是能够自动完成这种机械式重复的加法运算的计算机。
差分机适用于编制天文和航海表,英国政府决定出资制造一台更大的差分机,但巴贝奇活跃的思想集中于追求更加完美的发明,因此在制造过程中不断地修改自己的设计方案,制造厂家也遇到不少技术上的困难。10年过去了,英国政府提供了17000英镑,巴贝奇自己也花费了13000英镑,制造工作却搁浅了。此时,巴贝奇的思想已经转向下一个更加激动人心的目标。
大约在1834年,巴贝奇完成了分析机的设计。这台分析机主要有三个部分:一是寄存数据的装置,他称之为“堆栈”;二是从“堆栈”取出数据进行各种运算的装置,称为“工场”;三是控制操作顺序、选择所需数据和输出结果的装置。巴贝奇在经济管理的理论和实践方面也有独特的造诣和建树,因此他在历史上还以经济管理学的先驱者著称。他到巴黎做经济考察时,从使用穿孔卡片控制操作的提花机受到启发而设计出分析机的控制装置,他说自己利用了这种美妙的发明,借助类似的方法对他的计算机下达命令,让它计算任一个复杂的公式,这个设想成为差分机产生的基础。
巴贝奇分析机的设计,实际上已经包含了现代通用数字计算机的主要思想。他为了专心致力于分析机的研制,不惜于1893年辞去了他担任了11年的剑桥大学卢卡斯数学讲座教授的职位,这是一个曾经由牛顿的老师巴鲁和牛顿本人担任过而令许多数学家羡慕的光荣职位。差分机制造半途而废以后,英国政府撤销了对巴贝奇发明活动的财政支持,巴贝奇只能用自己的家产支持工作。
值得一提的是,在巴贝奇为数不多的知音中,有一位英国著名诗人拜伦的女儿艾达。1843年,艾达发表了《关于巴贝奇先生发明的分析机简讯》,其中包括了她为分析机编制的几种函数的计算程序,这使她成为历史上最早的一位计算机软件设计师。1978年,一种新型计算机高级语言被命名为“Ada语言”,这种语言是对软件设计师艾达的纪念。
巴贝奇分析机的设计是一项“超越时代”的发明,当时既无法在技术上实现,社会对这种先进的计算机也无迫切需求。巴贝奇为制成这台分析机,花费了近40年的时间和他的大部分财产。在他1871年去世时,留下了约30种不同的设计方案,几万个零件的200多张图纸和大量的工作笔记被锁进了历史博物馆。
差不多过了七八十年,当20世纪的发明家们从头开始探索现代数字计算机的设计思想时,才重新发现了巴贝奇精神遗产的熠熠光辉。人们惊奇地发现,巴贝奇分析机的设计竟包括了现代电脑的程序设计和逻辑结构的主要思想。例如,存储装置:当时巴贝奇称之为“堆栈”或“仓库”;运算装置:巴贝奇称之为“工厂”、“作坊”、“机器”,用齿轮间的啮合、脱离、旋转、平移等进行数字运算;控制装置:巴贝奇用穿孔卡片控制计算顺序,选择所需处理的数据输出结果,相当于现代电子计算机的控制器、输入设备、输出设备的综合功能。