计算工具可追溯到中国古代。早在春秋战国时代(公元前 770 年至公元前 221 年),我们的祖先已使用竹子制作的算筹完成计数,唐代就已经出现早期算盘(数据的表示和存储),宋朝就已经有了算盘口诀(计算规则制定和执行)的记载。
中国古代计算工具——算筹和算盘
远在商代,中国就已经创造了十进制的计数方法,领先于世界一千多年:到了周代,中国发明了当时最先进的计算工具——算筹,后来演算成算盘。算筹和算盘都是中华名族的智慧结晶,作为促进中国古代商业快速发展的功臣,“珠算” 和算盘(珠算基础上产生的)在历史上留下浓墨重彩的一笔。2013 年 12 月 4 日,珠算被正式列入人类非物质文化遗产名录。珠算的成功申遗有助于我们增强民族文化的自豪感,也是中华民族值得骄傲的资本之一。
什么是算筹
算筹是一根根长度、粗细大致相同的竹棍,直径约为 0.2~0.3 厘米,长度约为 13~14 厘米。算筹大多使用竹子制作而成,但是也有使用木头、金属、象牙、兽骨等材料制作的。将算筹装在袋子里或笔筒中随身携带,也就是古人所说的:“算袋” 或 “算子筒”。唐朝时期规定,文武官员都必须备有算袋,用以提高决策的科学性。
算筹如何计数
用算筹表示数,有纵、横两种方式。
在纵式中,纵摆的每根算筹都代表 1,表示 6~9 时,则上面摆一根横的代表 5,横式中则是横摆的每一根都代表 1,其上面纵摆的一根代表 5。算盘中的上面一个子代表 5,下面的一个子代表代表 1,是从算筹中延续的。计数的十进制是我国古代最重要的发明之一。
当需要表示一个多位数时,就将每一数位的数字从左到右横列,每一数位数的算筹需要纵横相间,个位数用纵式表示,十位数用横式表示,百位、万位用纵式表示。千位、十万位用横式表示,使每一数位界限分明,防止发生错误。
算筹运算
算筹运算有一套规则和口诀。我国古人不仅可以用它做加、减、乘、除四则运算,还可以完成乘方、开方,即使是多元多次方程这样高深的数学难题都能解出来。我们的古人在计算时,乘法、除法二者都是从左到右的顺序计算,乘数在上,被乘数在下,积放在中间。使用“算筹”计算时不用笔,算筹可以任意改变形态,所以从左到右计算根本不麻烦。
《孙子算经》还有分数四则算筹和算筹开平方法。我国东汉时期编订的《九章算术》是一部数学经典著作,给出了最大公约数算筹法、算筹联立一次方程法、算筹开立方法。在《九章算术》中的“方程”章中的一次方程组是由不止而成,算筹是竖排的,为方便看图,改为横排,从左到右列出的算筹数分别表示未知数x、y的系数和对应的常数项。
在南北朝时期,祖冲之使用算筹“调日法”得到了圆周率的率 355/113,精确到小数点后 7 位,世界记录保持 1000 年之久。
北宋贾宪发明了算筹增乘开立方法,可以给百万数量级的大数精确开立方,并被南宋秦九昭推广,同时发展了特定一元四次方程的解法。算筹的巅峰应用则出现在元代,朱世杰在《四元玉鉴》中给出了特定四元高次方程组的解法——使用算筹逐次消元化为一元高次方程。
算筹考古
我国的算筹和筹算制度,春秋战国时期,《老子》中有过记述,“善计者不用筹策”,表明春秋战国时期算筹已经很普遍。《易经》书中的八卦的图标由横竖长短不同的横线组成,与当时算筹的使用有极大的关系。
据目前考古发掘,最早的算筹实物是汉代的,1954 年考古学家在湖南长沙左家公山发掘出的战国古墓,发现了竹算筹 40 根,长约 12 厘米;1975 年在湖北江陵凤凰山汉墓中发现竹制算筹;1971 年在陕西千阳县发掘的西汉墓中发现一束在一个丝带(算袋)中保存完好的兽骨算筹,长短不一最长约为 13.8 厘米,最短的约为 12.6 厘米,截面呈方形,边长约为 0.4 厘米。
算筹发展为算盘
算筹是我国从周代都元代应用了约 2000 年,对我国古代数学发展是功不可没的,南北朝数学家祖冲之计算圆周率应该就是用算筹完成的。但算筹也有严重的缺点:运算是需要较大的地方摆算筹,位数愈多、问题愈难,需要摆的面积愈大,不是很方便;另一个是运算过程不保留。他的运算过程就是挪动算筹,运算一步,移动一下,运算下一步后,上一步就看不到了。虽然其还具有节约纸张的优点,但是也有不好检查错误,学习起来很困难,我国古代数学不能发展为现代数学,算筹的计算方法的限制是其中的原因之一;元末明初之后,珠算逐渐取代了算筹。
算盘的发展和应用
珠算:以算盘为工具进行的一种数学计算方法,被誉为中国的第五大发明;算盘的历史,最早可追溯到公元前 600 年,当时称为算板,古人使用算珠为组,将其放置于方框内,进行计算。算盘的规格大多是长方形,四周以木条围框,内有轴心,俗称为:档。中间有一个横梁隔开,上端有两个珠子,下面有五个珠子,其中上端的珠子代表数字 5 ,下边的珠子代表 1,运算时以口诀辅助,这就是珠算。
我国最早的算盘是载于东汉末年的《数述记遗》,是和罗马算盘一样的游珠算盘,有一句 “珠算控带四时,经纬三才”;在北周往后,甄鸾为此作注,大概指出了算盘的雏形。游珠算盘到唐代被改良为现在的串珠算盘;当前存世最早的算盘图像见于北宋张择端的《清明上河图》,卷左赵太丞家药铺柜台上有一个十五档一四算盘,和现代的会计使用的算盘几乎一样。
算盘比算筹在操作上更加实用、节省空间、操作迅速,计熟一套 “三下五去二” 就足以胜任绝大多数的账面工作;但是牺牲了布局的自由,只从算筹上继承了四则运算、开平方、开立方等简单操作,两幅算盘并联操作才能计算分数。
除了在数学方面的作用,算盘在文化中也占着重要地位,由于算盘在生意中的醒目位置,因此常常被认为是招财进宝的宝贝,更有精打细算的名号在外,于是其顺理成章的成为古时嫁妆的六证之一,是祝福新人富足安宁的一样陪嫁。
明清两代算盘上升到了一定的高度,做工精巧奇妙,成为皇室贵族和达官贵人随身携带的物品之一,就像 20 世纪 80 年代至今的一些生意人做买卖的手里拿的电子计算器一样。
明代皇室后裔朱载堉应科学研究需要,对珠算进行开创性的研究,特别是创造性的将算盘串联、并联使用,使珠算的存储量无限,具有了最高的计算能力,如:首创使用珠算归除法进行开高次方运算,以及诸如九进制和十进制换算的巧妙简捷的珠算法程序和数学发现等。朱载堉用横跨 81 档的特大算盘进行开平方、开立方的计算,提出了 “异径管说”,以此为据,设计并制造出弦准和律管。朱载堉的 “十二平均律” 使这十二个键的每相邻两键音律的增幅或减幅相等。对于这个音乐领域遗留了 1000 多年的学术难题,朱载堉经过几十年的潜心研究,终于以他的十二平均律之说解决了。
古时甚至有能工巧匠做出过戒指算盘,这种微型算盘在计算时需要用符号型号的细针拨动才能够运算。清朝还有一种巨型算盘,共 9 层,全木质结构,带有算珠 1512 个,是当年叱咤天下的徽商账房所用之物,并且带有种种账目汇总,因此筹算被数学家青睐,珠算在民间迅速推广,使的算盘的形制不像算筹那样固定。
17 世纪后,西方工业革命推动了计算工具的进一步发展,在欧洲出现了可以实现加、减、乘、除运算的机械式计算机。1944 年美国物理学家 艾肯(Howard Aiken)设计了第一台机电式通用计算机(Computer),主要组件采用继电器,是一台可编程的自动计算机,可以自动完成数据的表示和存储、制定计算规则,并自动执行规则。
世界公认的第一台通用电子数字计算机是美国宾夕法尼亚大学莫尔学院电工系莫克利(John Mauchly)和埃克特(J.Presperr Eckert)领导的科研小组建造的,取名为 ENIAC(Electronic Numerical Integrator And Computer,电子数字积分计算机)。ENIAC 由 18000 多个电子管、1500 多个继电器等组成,占地 170 平方米,重量 30 吨,投资超过 48 万美元。ENIAC 的字长为 10 位十进制数,计算速度为 5000 次/秒,每次至多只能存储 20 个字长为 10 位的十进制数。计算程序是通过 “外接” 线路实现的,未采用 “程序存储” 方式。为了在机器上进行几分钟的数字计算,准备工作要花几个小时甚至一两天的时间,很不方便。ENIAC 1945 年年底宣告完成,1946 年2 月 15 日正式举行揭幕典礼,标志着人类计算工具的历史性变革。
1944 年 8 月至 1945 年 6 月是电子数字计算机发展史上的智力活动最紧张的收货季节。冯•诺依曼(Von Neuman)和莫尔学院的科研组合作,提出一个全新的存储程序的通用电子数字计算机方案 EDVAC(Electronic Discrete Variable Automatic Computer,离散变量自动电子计算机),即冯•诺依曼型计算机。EDVAC 采用二进制代码表示数据和指令,并提出了 “程序存储” 的概念,奠基了现代电子计算机的基础。1946 年 7 月莫尔学院在美国海军研究局和陆军军械部的资助下,开办了 “电子数字计算机设计的理论和技术” 的专门讲座,听讲的有 20 多个美国和英国机构派来的 29 位专家。此举大大触发了电子计算机的繁荣局面,多台程序存储式计算机同时在美英等国设计和制造;如:1949 年问世由英国剑桥大学研制的 EDSAC(Electronic Delay Storage Automatic Calculator,电子延迟存储自动计算器)、1950 年问世的美国 SEAC(Standards Electronic Automatic Computer,标准电子自动计算机)等。由于设计组内部对发明权的争议,冯•诺依曼等人提出的 EDVAC 研制工作进展缓慢,直到 1952 年才问世,在美国只列第四。
对计算机的产生做出杰出贡献的另一位科学家是英国剑桥大学的图灵(Alan Turing,1912—1954 年)。早在 1936 年,图灵为了解决一个纯数学的基础理论问题,发表了著名的 “理想计算机” 论文,该论文中提出了现代通用数字计算机的数学模型,后人将他称为 “图灵机”。冯•诺依曼在世时,不止一次说过:“现代计算机的设计思想来源于图灵”,且从未说过程序存储型计算机的设计思想是由他本人提出的。图灵在 1945 年曾研制过 ACE 计算机,1947 年提出了自动程序设计的思想,1950 年发表了著名的论文《计算机能思考码》,对人工智能的研究做出了贡献。