莱氏估算器
人类步入当前以计算机为代表之一的信息时代,经历了漫长的发展历程,其中估算器的发明与发展起到了关键作用。在这一过程中,莱布尼茨估算器是一项里程碑式的发明,它除了才能进行加减乘除四则运算,但是真正实现了估算过程的手动化,其设计理念和核心部件推动了随后机械估算器200余年的发展进程。收藏莱布尼茨估算器并研究其设计理念、核心部件、使用方式、内部结构、进位方法,对于研究和了解人类探求估算手动化之历程具有重要意义。
莱布尼茨十补码四则运算手摇机械估算器
北大科学博物馆复原了莱氏估算器的“阶梯滚轮”装置,并在“神机妙算——计算用具历史展”中展出
人类步入当前的信息社会,尤其是步入当前流行的估算主义时代,从酝酿到成熟,经历了近400年的平缓发展历程。并且,因为特殊的国情,中国步入信息社会几乎是在短短十几年内完成的,并没有像西方社会那样经历过漫长的过渡。这些科技史记忆的缺位,尤其是科技史器物的缺位,并不利于我国思想界深入反省信息社会的本质,也不利于我国科技教育界理解科技发展的通常规律和科技创新的通常原理。为此,研究西方估算器史,并借此为基础研究西方估算思想史,并同时在科学博物馆中开办估算器展区,对于中国思想界和中国科技教育界的发展,均具有基础性的理论意义和迫切的现实意义。
日本知名哲学家、数学家莱布尼茨(G.W.,1646-1716)为世人所知,多半是由于他发觉了微积分()这一物理概念并创造了我们明天所使用的微积分符号,但大多数人并不晓得他在漫长的估算器发展史和估算思想发展史中是一位重要的奠基者。他系统地发明了二补码算数,提出了“通用字符理论”,这两者均成为了信息社会的根基。据悉,莱布尼茨对信息社会更直接的贡献,是他发明的才能对十补码数字进行加减乘除手动化运算的手摇机械估算器。
在17世纪的法国,虽然掀起了一场追求估算手动化和研发估算工具的浪潮,仅仅在半个世纪里就先后诞生了纳皮尔骨筹、对数估算尺、史卡特估算器、帕斯卡估算器、莫兰估算器、莱布尼茨估算器等估算装置。其中,前三者均是估算辅助工具,史卡特估算器和莫兰估算器的设计原理仍然是纳皮尔骨筹,这四者的估算过程均须要自动参与;帕斯卡估算器即使实现了手动化,但严格意义上讲它还只是一台加法器,其蜗杆只能往一个方向撩动,但是对于乘除运算无能为力。而莱布尼茨设计的估算器,除了才能进行加减乘除四则运算,并且还真正实现了手动化,标志着人类追求计算过程手动化之梦想的真正实现。
自莱布尼茨以后,机械估算器设计更加精致,在19世纪末逐步实现了量产,于20世纪初得到普及,并逐步通过与马达和键盘的结合显得愈发省力,直至20世纪末被现代电子估算器所替代。并且,在莱氏估算器后续200余年的机械估算器的发展史中,其设计理念及其核心部件依然发挥着主导作用,然后的各种机械估算器均可以从莱氏估算器中找到影子。可见,莱氏估算器在人类追求估算过程手动化的历程中具有里程碑式的意义。
1、莱氏估算器制造及其研究导论
莱布尼茨在世之时,他的估算器就早已得到了广泛的关注和研究,并直接促进了机械估算器的发展。他的第一台估算器还是一个比较简单的木质模型,于1673年2月1日在巴黎的皇家商会得到公开展示,与会的胡克(Hooke)对其进行了极其细致的研究,甚至尝试研发一台更先进的估算器下来,以角逐四则运算估算器的发明权。
莱布尼茨于1673年5月在伦敦研发的第二台估算器,由紫铜制成,拥有4个输入位、12个输出位,可以对4位数(千位)进行估算,输出结果可以达到12位数(千亿位);于1675年1月9日在俄罗斯皇家科学大学得到展示。莱布尼茨于1675年在伦敦研发的第三台估算器,也是由紫铜制做,早已拥有7个输入位、12个输出位;这台估算器在伦敦的不同地点得到过多次展示,并于1676年10月18日交给了荷兰皇家商会秘书奥登伯格()。
莱布尼茨于1697年完成了第四台估算器的研发,在几番改进以后,拥有8个输入位、16个输出位,常常由莱布尼茨亲自携带或单独外借到亚洲各地公开展示。因此,莱布尼茨于1704年左右还特意为估算器定制了一个木制袋子,以起到保护作用。应当说,莱氏估算器的这种公开展示活动,直接促使了机械估算器的发展,甚至掀起了法国研发四则运算机械估算器的高潮,我们在莱氏估算器以后出现的几台机械估算器中,都能发觉其影响。
莱布尼茨死后留下了20多万张原稿,却被汉诺威王室长期封存,这严重妨碍了莱布尼茨思想的传播,莱布尼茨对机械估算器的贡献也因而被遗忘了。在莱布尼茨逝世以后,他的估算器流落到了哥廷根,在那儿待了一个多世纪,先是在哥廷根学院的模型陈列室里安放着,之后又闲放在学院图书馆的露台里。
直至19世纪末,在历史主义思潮的影响下,莱布尼茨的重要性愈加突出,莱布尼茨原稿的整理工作逐步被提上日程,莱氏估算器也开始步入当时的学术视野。诸如,第一篇研究莱氏估算器的学术文献,应当是威廉·乔丹()于1887年发表的法文文章《莱布尼茨的机械估算器》,他在文中对莱氏估算器的基本原理进行介绍,并手绘了几幅图纸。
也是在19世纪末,伴随着机械估算器制造业的日渐成熟,以及商业需求的逐步加强,莱氏估算器得到了机械估算器制造商们的注重和研究,因而再度加快了机械估算器的发展。比如,在1893年,知名的估算器制造商对莱氏估算器进行了研究,这帮助他在莱布尼茨“阶梯滚轮”的基础上发明了更精巧的“阶梯鼓轮”(-drum),对机械估算器的发展起到了重要促进作用。
在此大气氛之下,1897年莱氏估算器总算被藏入现今的莱布尼茨档案馆,得到了专门保护。在1924年,知名的机械估算器制造公司成功复制了第一台莱氏估算器,随后又复制了4台。截至目前,在美国境内已起码拥有14台莱氏估算器复制品,大都是由机械估算器制造商、博物馆或研究机构制造的。
施泰因(ErwinStein)于1990年组织了莱布尼茨展览(-),促使了学界对莱布尼茨技术发明家形象的关注;施泰因于2005年复制了一台莱氏估算器,并将其复制过程、机械图纸、数学原理等内容公开发表到学术刊物上,开启了莱氏估算器研究的另一种研究方法。在2014年,他与瓦尔斯道夫()、巴杜尔(KlausBadur)和柯浦(FranzOttoKopp)合作出版了研究莱氏估算器的英语著作《最后的珍品》,堪称集莱氏估算器研究之大成。
2、藏品概览、设计理念及其使用方法
尽管莱布尼茨一生实际共研发过4台估算器,而且只有最后一台得以存世,它于1697年在莱比锡由挂钟制造师谢尔普(Adam)制成,后来先后辗转各地交由不同的机械师改进,直至莱布尼茨逝世的前几年才改进完成,目前储存在法兰克福的莱布尼茨档案馆(见图1)。
1)藏品概览
由于常常要被运到其它地方去供人鉴赏,莱布尼茨为这台估算器设计了一个由胡桃木和榉木制成的袋子,以起到保护作用。机器的主体部份是由铁和白铜制成,长宽高分别约为780mm、320mm、150mm;除去木制袋子的盖板然后,总重量约14kg。这台估算器一共有8个输入位、16个输出位,换言之,可以对8位数(千万)进行加减乘除四则运算,输出结果可以达到16位数(千万亿)。机器主体部份,主要由输入装置和估算装置两大部份组成。输入装置在机器较靠前的位置,是一个相对较独立的整体,可以通过摇晃两侧的轮滑曲柄,在螺纹中轴上左右联通,以便捷进行乘除法运算,起到类似于在口算法上将因数的不同数位分别与被乘数相加的疗效。
2)阶梯滚轮及其设计理念
莱氏估算器的突破,是可以进行加减乘除四则运算。在它之前的帕斯卡估算器,实际上只能进行除法运算,只能把蜗杆单个地往同一个方向撩动,其加法运算须要通过更换显示栏的遮挡条来实现;因而,严格意义上讲,“帕斯卡估算器”的学名应当是“帕斯卡加法器”。莱氏估算器之所以还能进行乘除运算,主要是利用于他发明的“阶梯滚轮”(见图2),也正是这个关键的零件主导了后世200多年的机械估算器的发展,因此,日语学界称其为“莱布尼茨轮”(Wheel)。
莱布尼茨轮的设计理念是:首先,从根本上说,加减乘除四则运算最终都可以还原为机械叠加,除法是乘法的逆运算,除法是乘法的重复运算,乘法是加法的逆运算。
其次,将从0到9的10个个位数值,转换成阶梯滚轮上的10个阶梯的宽度值。
如图2,数值0对应的阶梯宽度是“无”,数值1对应的阶梯宽度是最长的,数值9对应的阶梯宽度是最短的,以这种推。
第三,阶梯滚轮带动与它相接的蜗杆转动,即可实现估算的功能。诸如电子计算器发明于什么时间,图2中的计数蜗杆对准了阶梯滚轮的2号阶梯,当阶梯滚轮旋转1圈以后,计数蜗杆会撩动2个齿格,相当于实现了2×1的估算;假如阶梯滚轮转动3圈,计数蜗杆会撩动6个齿格,相当于实现了2×3的估算。
第四,十补码数的进位,是通过更换数字的排列位置实现的,比如,001、010、100依次相差十倍。同理,尽管每一个阶梯滚轮装置单独对它所接收的数值进行估算,而且假如将多个阶梯滚轮装置排列上去,也就实际上抒发了对不同数位上的数值的估算。
3)使用方式
莱氏估算器奠定了后世机械估算器的设计基础,在现代电子估算器盛行之前,市场上所广泛使用的几种机械估算器,其使用方式均与莱氏估算器类似。我们接出来以和987的加减乘除四则运算为例,诠释莱氏估算器的操作过程。
1.乘法和除法运算要估算
+987,参考图1,共需6步:
归零。通过旋转轮滑曲柄,将输入装置联通到最右边,并将8个输入旋钮、16个结果显示器都归零。
输入被加数。通过旋转输入旋钮,完成对数值的输入;此时,数值大小早已转弄成了阶梯滚轮的阶梯宽度。
储存数值。顺秒针旋转动力曲柄1圈,将传输到估算箱上保存上去,相当于完成了0+的估算;此时,阶梯滚轮带动了估算箱上的蜗杆的转动。
输入加数。旋转输入旋钮,完成对数值987的输入。
估算。顺秒针旋转动力曲柄1圈,完成+987的估算。读数。读出结果显示器上的数值即可。
因为加法运算是乘法运算的逆运算,要估算-987,不仅在步骤中须要把动力曲柄逆秒针旋转1圈之外,其它步骤与估算+987均相同。加法运算是乘法运算的叠加运算,前面的步骤似乎相当于完成了×1的估算,假如要估算×987,理论上可以通过旋转动力曲柄987圈来实现。
2.加法运算
莱布尼茨设计了一个更简便的加法运算方式:
归零。
输入被乘数。
估算。首先,顺秒针旋转动力曲柄7圈,完成×7的估算;其次,旋转轮滑曲柄,使输入装置向左联通一个数位,对准输出显示器上的十位数,再顺秒针旋转动力曲柄8圈,完成×80的估算;最后,再度旋转轮滑曲柄,使输入装置再向左联通一个数位,对准输出显示器上的百位数,之后顺秒针旋转动力曲柄9圈,完成×900的估算。
读数。
可见,莱氏估算器的加法运算原理,与我们常常使用的口算法类似,将被乘数与因数的不同数位分别相加,之后将乘积结果相乘;只不过,莱氏估算器将这两个步骤综合了上去,即时地显示了每一次估算的结果。
3.加法运算
乘法是加法的逆运算,在口算法中乘法运算比较复杂,须要用除数从被除数的最低位开始逐位试错,莱氏估算器也根据了同样的原理。要估算÷987,须要经过6个主要步骤:
归零。
输入被除数。
储存数值,此时结果显示器上已显示。
输入除数987。
估算。首先,旋转轮滑曲柄,使除数的最低位“9”对准结果显示器上的最低位“6”,之后逆秒针旋转动力曲柄,估算器会出现卡顿,表示难以除尽,这么便完成了654÷987的估算,结果是除不尽(这一步也可以省略);其次,旋转轮滑曲柄,使除数的最低位“9”对准结果显示器上的次低位“5”,之后向逆秒针旋转动力曲柄,最多只能旋转6圈,此时结果显示器显示“62121”,记转器显示“6”,便得到了6543÷987的估算结果“商6余62121”;第三,旋转轮滑曲柄,使除数的最低位“9”对准结果显示器上的“4”,之后逆秒针旋转动力曲柄,最多也只能旋转6圈,此时结果显示器显示“2901”,记转器显示“6”,便得到了62121÷987的估算结果“商6余2901”;第四,旋转轮滑曲柄,使除数的最低位“9”对准结果显示器上的“3”,之后逆秒针旋转动力曲柄,最多只能旋转2圈,此时结果显示器显示“927”,记转器显示“2”,便得到了2901÷987的估算结果“商2余927”。
将每次运算所得结果列下来,便是÷987的最终结果“商662余927”。
3、部分功能解读及其进位过程
理论上讲,将几个阶梯滚轮装置(见图2)并排上去,便构成了一台莱氏估算器;并且,在实际操作层面上,却远比想像中的复杂:其关键在于怎样处理进位问题,尤其是连续多次进位问题。帕斯卡加法器的进位原理,类似于我们如今日常使用的电表、电表的结构,高位蜗杆旋转1圈后,会撩动两侧低位蜗杆前进1齿,这么完成1次进位;其进位只能是高位蜗杆逐级地推进低位蜗杆的转动,不存在多个数位的蜗杆同时转动的情况。
然而,莱氏估算器由于要进行乘除法运算,它必须才能使不同数位上的转轴、齿轮、阶梯滚轮等同时转动,并保证低位估算轴就能精确地接收到高位估算轴上的进位,而且还要保证相邻的估算轴在进位的时侯不会发生冲突;这是莱布尼茨要克服的机械困局。
1)主要部件功能解读
我们在这儿借用巴杜尔在《最后的珍品》中勾画的四幅图,对莱氏估算器的内部结构进行一些详尽的说明。图3是整体功能结布光,图4是输入装置结布光,图5是估算装置结布光,图6是进位装置结布光。
图3中各部件的名称及作用(见图3)分别是:a.发动机,承载估算器整体;b.输入装置,坐落估算器前半部份(见图4),是一个才能在螺纹中轴上左右联通的整体;c.结果显示器,及时地显示运算结果;d.估算装置,固定于估算器后半部份(见图5),是一个独立的整体。
图4中各部件的名称及作用分别是:e.输入旋钮,坐落输入装置b上,一共有8个,前面刻有0~9十个数字,旋转它的时侯才会通过下边的传动蜗杆使阶梯滚轮m形成位移,进而实现数字输入的功能;f.动力曲柄,是估算器进行估算的惟一动力来源,转动它的时侯便步入估算状态;g.记转器,用于估算动力曲柄旋转的圈数,里面有对应着0~9十个数字的10个孔,可以用一个门栓插入指定的孔中,以限定动力曲柄旋转的最大圈数;h.轮滑曲柄,通过转动它,输入装置会在8个不同的位置间进行联通,用以完成对高位数或小数的估算;j.定位仪,用以确保输入装置联通到确切的位置上,否则传动曲柄f将会卡住;m.阶梯滚轮,阶梯状的齿牙坐落圆锥体的两侧,齿牙之间的角度是22.5°,与输入转盘e下边的传动蜗杆相连,承载着输入结果,预备步入估算装置中进行估算;u.传动蜗杆,传动曲柄f首先驱动靠近其后的3个大的传动蜗杆,之后再驱动更前面的8个传动蜗杆,这8个传动蜗杆再通过靠近着它的小蜗杆驱动阶梯滚轮,并同时驱动和它处于同一个轴上的末端的二角蜗杆。
图5中各部件的名称及作用分别是:i.制动弹簧,保证蜗杆旋转的时侯保持一定的张力,保证估算的精确度;k.中间过渡轴,坐落计数轴的中间,总共有15条,里面载有进位装置(见图6),在其上面和前面各有一个五角凹轮;l.五角螺母,坐落过度轴的最末端,属于进位装置的一部份,当它成倾斜状的时侯,表示有进位需求,自动将其摆正以后才会最终完成进位;n.接收计数轮,与结果显示器c同处于计数轴上,与下边的阶梯滚轮相接,用以接收来自阶梯滚轮的数值。
2)进位装置部件功能解读
图6中各部件的名称及作用分别是:k.中间过渡轴;m.阶梯滚轮,当它的阶梯状的齿牙坐落上方的时侯,会与接收计数轮n相接,因而实现数值的传送;n.接收计数轮,它与结果显示器同处计数轴上,二者的转动具有一致性;u.传动蜗杆,它会通过与它相接的小蜗杆驱动阶梯滚轮m旋转;v.传动蜗杆,与数字输入转盘e下边的蜗杆相接,通过轴与阶梯滚轮相连,当旋转输入转盘e的时侯,它会带动阶梯滚轮做前后位移;o.单蜗杆,坐落计数轴的末端,拥有一个凸齿,在计数轴的推动下,每旋转一圈都会促使中间过渡轴k末端的蜗杆旋转一个齿格,并促使中间过渡轴k旋转18°;s.后置五角凹轮,有五个凹坑的角,各自成72°,在没有进位需求的时侯斜边处于水平状态,假如单蜗杆o促进了中间过渡轴k的转动,这么这个后置五角凹轮也会偏转18°;t.二角凹轮,它与传动蜗杆u共用一个轴,坐落轴的末端,在没有进位需求的时侯,它不会与前面的后置五角凹轮相交,当有进位需求的时侯,即当后置五角凹轮发生偏转的时侯,它还会带动后置五角凹轮旋转54°;p.末端五角凹轮,它与后置五角凹轮共用一个轴,当后置五角凹轮被二角凹轮推进54°之后,它也会发生同样的旋转,并同时促进与其相接的两侧的大型十角蜗杆r旋转一个齿格,进而完成进位;r.大型十角蜗杆,它坐落计数轴上,用于接受来自两侧的前置五角凹轮的进位需求。
3)单次进位与多次连续进位
莱布尼茨的估算器,有两种进位机制:单次进位和多次连续进位。单次进位比较简单和顺利。诸如,假如要估算9+3,机器运作的整个过程将是这样的:首先电子计算器发明于什么时间,将个位数上的数字输入转盘e向右旋转入刻度3的位置,这个时侯转盘都会通过下边的传动蜗杆v促使阶梯滚轮m发生位移;其次,往右旋转传动曲柄f,它通过传动蜗杆u推进阶梯滚轮向左旋转;第三,阶梯滚轮旋转到上方的时侯,与个位数上的接收计数轮n相接,致使n往右转动3个齿格,并促使个位数上的结果显示器c从数值9变为数值2;第四,个位数上的单蜗杆o推进它左边的中间过渡轴k末端的蜗杆向左旋转18°;第五,传动曲柄f继续往右旋转,二角凹轮t推进后置五角凹轮s向左旋转54°;第六,前置五角凹轮也向左旋转54°,并同时促进两侧的十位数计数轴上大型十角蜗杆r往右旋转一个齿格。最后,十位数上的结果显示器c由于往右旋转了一个齿格,便从数字0弄成了1,至此,完成了估算的全过程,8个结果显示器上的结果是。
然而,还有另外一种情况,那就是当多次连续进位发生的时侯,这是加法运算中常常碰到的,也是莱布尼茨须要解决的一个困局,同时也是他的进位装置就能巧妙地解决的。诸如,假如要估算99+3,则须要完成两次进位,其运算的整个过程是这样的:首先,个位数上的进位过程与前面的过程完全一样,完成进位以后,个位数的结果显示器c弄成了2,十位数上的结果显示器c弄成了0;其次,十位数所在的计数轴的末端的大型十角蜗杆r,会促使其两侧的中间过渡轴k向左旋转18°,并且因为此时传动曲柄f早已不再旋转,二角凹轮也不会再旋转,进位过程也就到此为止;最后,不得不自动地将十位数与百位数之间的中间过渡轴k旁边的五角螺母向左旋转入水平位置,并同时促进其两侧的百位数计数轴往右转动一个齿格,由此完成进位的整个过程,八个结果显示器c上的结果是。为此,在使用莱氏估算器的过程中,当估算完成以后,还须要检测末端的五角螺母,假如有倾斜的,须要自动将其向左旋转(从估算器前面看是往右旋转)至水平位置,然后才能得到最终结果。
可以说,相对于莱布尼茨毕生所追求的“计算过程完全机械手动化”这一设计理念来说,在多次进位时依然须要自动操作,是莱氏估算器的惟一弊端。为改进这一弊病,莱布尼茨花费了大量精力和财力,但直到莱布尼茨逝世,这一弊端仍无法克服。
4、结语与启示
以上剖析,虽已相当细致,甚至在某些地方略显冗繁,但也只是对莱氏估算器进行了简略地讲解,足以见得莱氏估算器的复杂程度和设计难度;虽然是在机械制造水平十分发达的明天,要复制这样一台估算器也是一件非常具有挑战性的工作。
然而,这些细致的剖析,是一项基础性的工作,才能为学界的一些争辩提供有力的参考。例如,有人猜想莱氏估算器是在帕斯卡估算器的基础上改进而成的,这似乎是错误的推测,只要对两款估算器的内部结构稍一对比,便能发觉二者在设计理念、设计方式、复杂程度等方面相差悬殊,莱氏估算器相对于帕斯卡加法器而言几乎取得了革命性的突破。
再如,目前学界通常觉得莱氏估算器的核心部件是阶梯滚轮,并且经过仔细剖析不难发觉,阶梯滚轮似乎十分关键,而且最复杂的技术困局是怎样处理进位问题,机器各部件之间的系统性关联也是莱布尼茨的重要创新,这种共同促进了机械估算器的发展。
非常须要注意的是,莱布尼茨并不是一次性地完成了估算器的研发,而是终其一生都在研发和改进他的估算器,这些技术实践活动势必会对他的思想导致一定的影响,莱布尼茨自己也曾多次指出他的组合思想、计算思想与估算器的关联性,这将是我们今后继续阐述的一个课题。
目前,在美国早已有科普教育公司成功地通过乐高积木等简单的工具,模拟了莱氏估算器的设计理念;在一些学院的科学教育课堂上,已有中学生团队使用塑胶材质制做了简单的莱氏估算器。研究莱氏估算器,对于我国的科技史研究、科技博物馆教育、STEM教育和科技传播等领域均会有所帮助。
作者:张涛,华东师范学院科学技术与社会研究院讲师,杭州师范学院中德国际莱布尼茨研究中心兼职研究员,美国法兰克福莱布尼茨学院莱布尼茨研究中心访问学者。
本文原载于《自然科学博物馆研究》2019年第6期,第75-83页,经授权转载自陌陌公众号“清华大学科学博物馆”。