
1.1.4 计算工具的发展
计算工具的发展过程就是人们不断追求计算的机械化、自动化和智能化,尝试各种计算工具,实现数据的表示、存储和自动存储数据、计算规则的表示、执行和自动执行计算规则的过程。
计算工具的发展包括手动计算器、机械式计算器和电子计算机3个阶段。
1. 手动计算器
在有史料记载之前,人类就开始使用小石块和有刻痕的小棍作为计数工具。随着人类的生产和生活日益复杂,简单的计数已经不能满足需要,很多交易不仅需要计数而且还需要计算。
计算需要基于算法,算法是处理数字所依据的一步步操作过程,而手动计算器就是利用算法进行辅助数字计算过程的设备。
在我国西周时期出现的算珠和春秋早期出现的算筹是最早将算法和专用实物结合起来的运算工具。到了宋元年间,杨辉等数学家创建的珠算歌诀是将算法理论化、系统化的初步表现。到了明代,珠算取代了算筹,算盘的应用空前成熟和广泛,如图1-1所示。

图1-1 算盘
算盘利用算珠表示和存储数字,计算规则是一套口诀,由人按照口诀手工拨动算珠完成四则运算。自动计算需要由机器自动存储数据执行规则,而算盘的计算过程由手工完成,所以算盘不是自动计算工具。
纳皮尔筹也称纳皮尔计算尺,如图1-2所示,是17世纪由英国数学家约翰·纳皮尔(John Napier)发明的。它由10根木条组成,每根木条上都刻有数码,右边第一根木条是固定的,其余的木条都可以根据计算的需要进行拼合或调换位置。纳皮尔筹也曾传到过中国,北京故宫博物院里至今还保留有藏品。

图1-2 纳皮尔筹
在17世纪中期,英国数学家威廉·奥特雷德(William Oughtred)在刻度尺的基础上发明了滑动刻度尺,此后的很长一段时期一直被学生、工程师和科学家所使用,如图1-3所示。

图1-3 滑动刻度尺
2. 计算机的雏形——机械式计算器
手动计算器需要操作者使用算法来进行计算,而机械式计算器则可以自动完成计算,操作者不需要了解其算法。使用机械式计算器时,操作者只需输入计算所需的数字,然后拉动控制杆或转动转轮来进行计算,操作者无须思考,且计算的速度更快。
1642年,法国物理学家、思想家布莱兹·帕斯卡(Blaise Pascal)发明了加法器(Pascaline),如图1-4所示。这是人类历史上第一台机械式计算器。它能自动存储计算过程中的数字,自动执行规则,通过齿轮表示和存储十进制的各个数位的数字。它通过齿轮比解决进位问题。在两数相加时,操作者先在加法机的轮子上拨出一个数,再按照第二个数在相应的轮子上转动对应的数字,最后就会得到这两数的和。

图1-4 加法器
1673年,德国哲学家、数学家戈特弗里德·威廉·莱布尼茨(Gottfried Wilhelm Leibniz)发明了乘法器,这是第一台可以运行完整四则运算的计算器。他还在巴黎科学院展示了经他改进的采用十字轮结构的计算器(见图1-5),完成了数字的不连续传输,这就是早期机械式计算器的雏形。据记载,莱布尼茨曾把自己的乘法机复制品送给了康熙皇帝。

图1-5 莱布尼茨改进的计算器
1822年,英国数学家查尔斯·巴贝奇(Charles Babbage)发明了差分机。它以蒸汽作为动力,可以快速而准确地计算天文学和大型工程中的数据表。差分机中使用了类似存储器的设计方式,甚至包含了很多现代计算机的概念,体现了早期程序设计思想的萌芽,如图1-6所示。

图1-6 差分机
库塔(Curta)是能用一只手拿着的机械式计算器,如图1-7所示。它可以进行加减乘除运算,还能计算平方根,其计算结果至少可以精确到11位。库塔计算器的发明者库特·赫兹斯塔克(Curt Herzstark)是在第二次世界大战期间被关押在布痕瓦尔德集中营中完成该设计的。20世纪50~60年代,库塔计算器广泛应用于科学家、工程师、测量员和会计师等人群。直到袖珍电子计算器于20世纪70年代得到广泛应用后,库塔才逐渐退出市场。

图1-7 库塔计算器
3. 电子计算机
在借鉴了手动计算器、机械式计算器的机械化和自动化的思想后,电子计算机实现了自动存储数据,且能够理解和自动执行任意的复杂规则,能进行任意形式的计算,计算能力得到了显著提高。
1937—1942年,美国艾奥瓦州立大学的约翰·文森特·阿塔纳索夫(John Vincent Atanasoff)和他的研究生克利福特·贝瑞(Clifford Berry)共同设计了阿塔纳索夫-贝瑞计算机(Atanasoff-Berry Computer,ABC),如图1-8所示。它不仅采用了真空电子管替代机械式开关作为处理电路,还结合了二进制数字系统的理念。ABC本身不可编程,仅可用于求解线性方程组。

图1-8 ABC
ENIAC(Electronic Numerical Integrator and Computer,电子数字积分计算机)于1946年2月诞生在美国宾夕法尼亚大学,它是美国为计算弹道表而研制的一台军用电子计算机,如图1-9所示。它使用了18 000个电子管,耗电量150kW,总重量达30t,每秒可以执行5 000次加法运算,造价为48万美元。ENIAC是世界公认的第一台通用电子计算机。

图1-9 ENIAC