计算机器前传:结绳、算筹、算盘等手动计算发展史(公号回复“手动计算”下载PDF资料,欢迎转发、赞赏、支持科普)

科学Sciences导读:计算机前传之结绳、算筹、算盘等手动计算,到加法机、乘法机、分析机等机械计算,重点讲述算盘和机械加法机的原理,展示分析机复杂图样。本期铺垫,下期纸带机、电传纸带机、单任务电子计算机是理解图灵机、图灵完备理论基础之一和实物背景知识。此文为“科学Sciences”公号操作系统、指令集、编译器、机械计算机、电子计算机等CS计算机科学系列科普文章。时势造英雄,做事要平台,看清计算史,简化再发展。

计算机器前传:结绳、算筹、算盘等手动计算发展史

文|秦陇纪,科学Sciences20181119Mon1125Sun

人类学会用工具辅助自己计算和记录,从最早的结绳记事到算筹、算盘、日晷、沙漏的使用,后来出现加法机、乘法机、差分机、分析机等机械计算机,再到纸带机、电子计算机、微电子计算机等电子计算机,一直到如今的台式机、笔记本、平板、智能手机、智能手表等智能计算设备......

一、手动计算器概述

说起古老的记事和计算方式,早在公元前3000年,古埃及人用结绳来记录土地面积和谷物收获的情况。这种传统结绳记事方式至今仍被一些没有文字的遗存文明所使用。而早期的计算器为纯手动方式,如算筹、算盘等。算筹通过短棍摆放的位置在表示数字;算盘通常以可滑动的珠子制成。在西方,算盘在印度阿拉伯数字流行前使用了数个世纪,近代中国记帐与商务仍广泛使用。

古代印加人的奇普(Quipu或khipu)是一种结绳记事方法,用来计数或记录历史,是最早的计算工具。它由许多颜色的绳结编成。[1]中国古代最早采用一种计算工具叫筹策,又叫算筹,多用竹子制成,也有用木头、兽骨充当材料的,约270枚一束,放在布袋里可随身携带。汉代直今使用的珠算盘(Abacus),是中国古代另一项计算工具发明。明代时珠算盘已经与现代的珠算盘几乎相同。[2]

二、算筹:最原始的计算器

算盘之前,还有更古老的计算工具——算筹。它们都有个“算”字,但形象差别相当大。算盘是一个长方形木框,内设支柱,柱上有算珠。而去掉算盘的框架和算珠,剩下的支柱就像是算筹了。在算筹之前,古代人们还使用过石子作为计算工具。但石子大小有别,很难进行加工,另外携带起来也颇为不便。久而久之,以木棍为主的筹算就成为了主要的计算工具。

算筹不是随便找几根木棍凑在一起,而是有一套相应的制作规则。首先,作为算筹的木棍要长短相同,不能参差不齐;其次,木棍的粗细也要统一,尽量保持“身材一致”;算筹的长度一般为13-14cm,径粗0.2-0.3cm;在当时,市面上最常见的算筹多用竹子制成,另外也有取材于木头、兽骨等,更为高级一些的算筹则使用象牙或者贵重金属制成。

一般来说,算筹是其统称,单根木棍成为(现在通常认定,算筹既可表示一整套计算工具,也可表示单独一根筹),大约270枚筹为一束,通常的计算用这270枚则足矣。

由于算筹不像算盘那样是一个统一的整体,因此就需要一个特制的布袋来盛放这些互相独立的算筹,就像荷包一样系在腰部随身携带。这个布袋叫做筹袋。在古代,腰间系着筹袋,就能说明自己是一个有学问的人。这跟我国七八十年代的知识分子喜欢在衬衣的口袋里别一根钢笔有异曲同工之妙。当人们需要记数和计算的时候,就取出算筹,找到一个合适的地方进行计算。

春秋战国时期,算筹使用较为频繁,实际发明年代远早于此,其具体发明时间已不可考。西周时期,我国数学发展就已经取得相当成就,到秦朝,数学得到更为蓬勃的发展,这些都与筹算息息相关。据记载,墨子止楚攻宋和沙盘演练使用的就是筹;有学者认为,我国古代的伏羲八卦也跟筹算密不可分,八卦的造型就是用筹摆设出来的。宋元之后,筹算开始没落,取而代之的是珠算,也就是我们熟知的算盘。

著名华裔科幻作家刘宇昆曾写过一篇科幻小说,表达神秘的结绳记事方式。但结绳记事并非古埃及原创,据《易经》记载“上古结绳而治,后世圣人易之以书契。”到了公元前2000年,美索不达米亚人用楔形文字在泥板上进行计算。但是这些跟算筹比起来,就不在一个量级。前两者只能做一些简单的计算和记录,而算筹则通过其特殊的摆法可以进行加减乘除,是一个不折不扣的计算器。

2.1 算筹的表达和计算数字的方法

使用算筹进行计算,首先需要了解数字在算筹计数法中的表达方式。算筹有两种排列方式,分为纵和横,其中数字“1、2、3”以纵横方式排列相应数目的算筹来表示,乍看之下,有一些像罗马数字“Ⅰ、Ⅱ、Ⅲ”,如果以横列表示,则像是这三个数字的大写“一、二、三”,数字“4、5”则在“3”的基础上增加相应的筹数即可。数字“6-9”的表示方式相对有些复杂,需要用上面的算筹加下面相应的算筹来表示。不过也可以参考罗马数字“Ⅳ、Ⅸ”的方式来进行理解。需要表示多位数时,个位用纵式,十位用横式,百位用纵式,千位用横式,以此类推,遇零则置空。

之所以要分纵横两种不同的摆法,是因为算筹的摆放有一套既定的规则:个位用纵式,十位用横式,百位再用纵式,千位再用横式,万位再用纵式等等。从右到左,纵横相间,以此类推,只要有足够多的木棍,就可以用算筹表示出任何自然数。由于它位与位之间的纵横变换,且每一位都有固定的摆法,所以既不会混淆,也不会错位。据《孙子算经》记载,算筹记数法则是:“凡算之法,先识其位,一纵十横,百立千僵,千十相望,万百相当。”《夏阳侯算经》说:“满六以上,五在上方,六不积算,五不单张。”这些讲的都是算筹的一些使用法则。

2.2 算筹的计算模式

筹算所使用的计算方式是十进位制。十进位制又称十进位值制,其中包含有两方面含义。其一是“十进制”,即每满十数进一个单位;其二是“位值制”,即每个数码所表示的数值,不仅取决于这个数码本身,而且取决于它在记数中所处的位置。例如“3”这个数码,在个位上表示3,放在十位上就表示30。在我国商代的文字记数系统中,就已经有了十进位值制的萌芽,到了算筹记数和运算时,就更是标准的十进位值制。

十进位值制经过验证是最符合数学计算的一种位值制,相比同时期的其他国家,我国当时的数学要远远领先。古罗马的数字系统没有位值制,只有七个基本符号,别说计算,就是表示稍大一点的数目就相当困难;古美洲玛雅人比古罗马人聪明一些,他们掌握了位值制,但用的是20进位;古巴比伦人也知道位值制,但用的是60进位。20进位至少需要19个数码,60进位则需要59个数码,这就使记数和运算变得十分繁复,远不如只用9个数码便可表示任意自然数的十进位制来得简捷方便。了解了这些,就可以用算筹来进行加减乘除的运算啦。当然,那就是另外一门比算筹本身更加复杂和磅礴的学问了。试一下通过摆放算筹来进行计算,是不是很有意思呢?

三、算盘——流传至今的原始计算器

算盘,又作祘盘珠算盘,是中国祖先创造发明的一种简便的计算工具。珠算盘起源于北宋时代,北宋串档算珠。中国是算盘的故乡,在计算机已被普遍使用的今天,古老的算盘不仅没有被废弃,反而因它的灵便、准确等优点,在许多国家方兴未艾。因此,人们往往把算盘的发明与中国古代四大发明相提并论,北宋名画清明上河图赵太丞家药铺柜就画有一架算盘。由于珠算盘运算方便、快速,几千年来一直是中国古代劳动人民普遍使用的计算工具,即使现代最先进的电子计算器也不能完全取代珠算盘的作用。

图3 算盘图册

中文名:算盘,外文名:Abacus,拼音:suànpán,发源地:中国,用途:算术运算,使用历史:2600多年,形状:长方形,别称:祘盘,算盘种类:沙盘类,算板类,穿珠算盘类。发明者:刘洪。

3.1 词语解释(▪基本解释▪引证解释)

3.1.1 基本解释

(1)[abacus]∶中国使用的一种计算用具,一木框中嵌有细杆,杆上串有圆珠,圆珠可沿细杆上下拨动,通过用手拨动算盘珠来完成算术运算。

她们那快乐的心里便时时闪过了这样的算盘:夹衣和夏衣都在当铺里,这可先得赎出来;过端阳节也许可以吃一条黄鱼。——《春蚕》

(2)[thinking]∶比喻计划、打算。如意算盘。[3]

3.1.2 引证解释

1、一种计算数目的工具。

其形长方,周为木框,内贯直柱,俗称“档”。一般从九档至十五档,档中横以梁,梁上两珠,每珠作数五,梁下五珠,每珠作数一,运算时定位后拨珠计算,可以做加减乘除等算法。清钱大昕《十驾斋养新录·算盘》:“古人布算以筹,今用算盘,以木为珠,不知何人所造,亦未审起于何代。案陶南村《辍耕録》有走盘珠、算盘珠之喻,则元代已有之矣。”

2.比喻计划。

①《红楼梦》第五三回:“我心里却有个算盘,还不至此田地。”

②《官场现形记》第十二回:“所以周老爷打了这个算盘,认定主意一直叫他。”

③高云览《小城春秋》第三六章:“赵雄所以愿意这样做,是有他自己的算盘的。”[4]

④老舍《四世同堂》八八:“如果你们俩胆敢合起来算计我,那就打错了算盘。”

3.2 基本概念

算盘是计算数目的工具。现存的算盘形状不一、材质各异。一般的算盘多为木制(或塑料制品),由矩形木框内排列一串串等数目的算珠,中有一道横梁把珠统分为上下两部分,算珠内贯直柱,俗称“档”,一般为9档、11档或13档。档中横以梁,梁上1珠,这珠为5;梁下5珠,每珠为1。

图4 文王桃木算盘

算盘是长方形的,四周是木框,里面固定着一根根小木棍,小木棍上穿着木珠,中间一根横梁和算盘分成两部分,每根木棍的上半部有两个珠子,每个珠子当五,下半部有五个珠子,每个珠子代表一。

用算盘计算称珠算,珠算有对应四则运算的相应法则,统称珠算法则。随着算盘的使用,人们总结出许多计算口诀,使计算的速度更快了。相对一般运算来看,熟练的珠算不逊于计算器,尤其在加减法方面。用时,可依口诀,上下拨动算珠,进行计算。珠算计算简便迅捷,在计算器及电脑普及前,为我

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值