寂静回声 发表于 2020-9-15 09:02:57

第一传奇之真正的四则运算器

所谓计算机,往简单了说,就是可以实现计算功能的机器。诚然现在的计算机应用已经远远超出了计算本身,不论是电脑、平板、还是手机,我们天天靠着它们看电影、听音乐、交流感情,看似与计算已经毫无关系,但事实上最初计算机的诞生就是为了满足人们对数学计算的需求,而如今计算机这些强大功能的底层实现,也依旧靠的是数学计算。
远古时代,原始人为了搞清楚猎物的数目就已经与计算攀上了关系,他们用手指计数,用结绳记事。到了古代,人们又发明了算筹、算盘等简单工具。16世纪欧洲人又发明了纳皮尔棒,借助复杂的使用方法,求解复杂的问题。


到了17世纪, 西方国家不断扩大海外贸易,航海事业蓬勃兴起,航海就需要天文历表。在那个没有电子计算机的时代,一些常用的数据通常要通过查表获得,比如cos27°,不像现在这样掏出手机打开计算器APP就能直接得到答案,从事特定行业、需要这些常用数值的人们就会购买相应的数学用表(从简单的加法表到对数表和三角函数表等等),以供查询。而这些表中的数值,是由数学家们借助简单的计算工具如计算尺一个个算出来的,算完还要核对。脑力活硬生生沦为苦力活。而但凡是人为计算,总难免会有出错,而且还不少见,机械计算设备就在这样的迫切的需求背景下应运而生。可不要小看了只能做四则运算的机器,计算量大时,如果数值达到上万、上百万,手工计算十分吃力,而且容易出错,这些机器可以大大减轻人工负担、降低出错概率。
-----------
在步进计算器诞生之后的两百年间,虽然制造工艺在不断进步,机械计算器的可靠性在不断提高,可计算原理却没有丝毫改进,基本上算是莱布尼茨体系。各路莱系计算器都宣称能进行四则运算,其实乘除计算的实现靠的是重复加减,使用者需要多圈旋转手柄,以伪造乘除运算。严格来说,这不是真正的四则运算,它们只具备加减能力,因此常被称为加法机(Adding Machine)。那么有没有只靠机械结构就能实现自动乘除的可能性呢。
1834年,意大利人路易基托尔基(Luigi Torchi)发明了世界上第一台可以直接进行乘法除法的计算器,不过可惜传世资料甚少。真正传世的四则运算器专利分别出自
1872年美国人埃德蒙巴伯(Edmund Barbour),
1878年西班牙人雷蒙韦拉(Ramon Verea0
1889年法国人莱昂伯利(Leon Bollee)
而第一个让这种四则运算器商业化的,是一位生活在德国慕尼黑的瑞士工程师奥托施泰格尔(Otto Steiger)。他改进了莱昂伯利的发明,并于1892年取得德国专利,随后在法国,瑞士,加拿大和美国取得了专利。在苏黎世工程师汉斯W埃格利(Hans W Egli)的帮助下,于1893年开始量产,他们为它起了个霸气的名字:百万富翁(The Millionaire)。

百万富翁咋看起来像高配版的托马斯运算器,它有和托马斯运算器一样的设置数值滑钮和计算手柄。百万富翁封装于木箱之中,打开箱盖,机身分为前后两部分,后部分又分为左中右三个功能区,左区有一根小角度摆的手柄,称为乘数手柄,负责乘法;中区有与托马斯运算器类似的设置数值滑钮,底部是与之对应的示数窗口,右区是选择运算模式的滑钮(A,M,D,S分别对应着加减乘除)和计算手柄。前部分是封装在机器内部的可动部分,主要显示计算结果和手柄旋转圈数,每次计算前都需要将可动部分移至最右侧,并向右滑动清零滑钮以其实现清零操作,滑零滑钮在弹簧作用下会自动回到左侧。

加法运算


模式选择为A。
通过置数滑钮置入被加数,旋转计算手柄,被加数就显示到了结果示数窗口。
通过置数滑钮置入加数,旋转计算手柄,加数就累加到了被加数上,此时结果示数窗口即为最终结果。
减法运算


减法的步骤与加法一样。


模式选择为S。
通过置数滑钮置入被减数,旋转计算手柄,被减数就显示到了结果示数窗口。
通过置数滑钮置入减数,旋转计算手柄,减数就从被减数上扣除,此时结果示数窗口即为最终结果。
乘法运算


“莱系”计算器在进行乘法运算时,需要分别计算被乘数与乘数每一位的部分积,“百万富翁”也是如此。所不同的是,前者在计算被乘数与乘数某一位的部分积时,该位数字是多少,计算手柄就要旋转多少圈,而“百万富翁”始终只需旋转1圈。以1024×128为例:


模式选择为M。
通过置数滑钮置入被乘数1024。
旋转乘数手柄,指向乘数128最高位上的数字1,旋转计算手柄,被乘数1024与乘数最高位1所产生的部分积102400便显示到结果示数窗口。同时,在计算手柄的旋转过程中,可动部分自动左移一位,以备累加下一步被乘数与乘数次高位的乘积。
旋转乘数手柄,指向乘数128次高位上的数字2,旋转计算手柄,被乘数1024与乘数次高位2所产生的部分积20480便累加结果示数上,示数为122880。可动部分自动左移一位。
以此类推,直至乘数个位——此例中,这一步已经到达。旋转乘数手柄,指向乘数128个位上的数字8,旋转计算手柄,被乘数1024与乘数个位8所产生的部分积8192便累加结果示数上,示数为131072,即1024×128的最终结果。


除法运算


以131072÷1024为例:


模式选择为D。
通过置数滑钮置入被除数131072,旋转计算手柄,131072进入结果示数窗口。
通过置数滑钮置入除数1024。
比照除数和被除数的高4位,通过心算估算商的最高位为1,将乘数手柄指向1。
旋转计算手柄,如果估算准确,结果示数被扣去除数1024与商最高位1的部分积102400,示数余28672。如果估算偏高了,被除数不够扣,机器就会响铃警报;如果估算偏低了,使用者会在下一步估算时发现。同时,在计算手柄的旋转过程中,可动部分自动左移一位。
比照除数和28672的高4位,估算商的次高位为2,将乘数手柄指向1。
旋转计算手柄,结果示数被扣去除数1024与商次高位2的部分积20480,示数余8192。可动部分自动左移一位。
以此类推,直至结果示数小于除数,此时的结果示数即为余数。此例中,商的下一位估算为8,余数为0,商即128。
可见,这一除法过程很大程度上依赖于使用者的心算,“百万富翁”仅作为一件辅助工具,帮助使用者快速验证自己的估算。考虑到部分用户心算能力有限,盒盖的内侧贴着一张1~9分别与1~99的乘积表,并附有两个可上下移动的读数游标。









页: [1]
查看完整版本: 第一传奇之真正的四则运算器