赵工的个人空间(玩主)


业余爱好部分转专业技术部分


 科技史话

首页 > 业余爱好 > 科技史话 > 计算机史话1--机械时代
计算机史话1--机械时代
计算机,也常被称为电脑,已变成现代生活不可或缺的一部分,无论商业办公还是家居生活,大都必不可少,城市年轻人也大都使用过。其实,现在广泛流行而几乎变成人人必备的智能手机,也是一种计算机。计算机,是一种电子装置,虽然从出现至今不过只有70多年,但追溯其源起却有很长的历史。
计算机,字面上的意思是会计算的机器。其实在古代,为了计算方便,就想出了很多办法,最早的应该是数指头吧。数目大了,指头不够数了,怎么办?就出现了摆木棍、结绳、算筹等方法,而在中国还出现了算盘,这都是比较古老的计算工具。
在西方,一般认为当年只有19岁的法国人帕斯卡(Blaise Pascal)发明的加法器是最早的计算机,使用的是齿轮传动,目的是帮助父亲做税务计算,于1642年完成。这种加法器在当时的法国引起了轰动,人们成群结队前去参观,并在财政大臣支持下制造了50台,后发展到可以计算8位数字的加法。帕斯卡的发明,得到公认,很重要的一个原因是法国的博物馆内现在还有样品。
如果查找资料,更早的苏格兰人纳皮尔(John Napier)就有了设计能进行四则运算的装置的想法,而他最重要的贡献是发明了对数,这样就可以使用加法来计算乘法。后世很长时间内计算多位数乘除法都是利用对数,从而把乘除法变为加减法,然后再利用反对数(即指数)转换回去。查找资料时,发现纳皮尔的对数其实相当于以2为底的对数,后来布里格斯(Henry Briggs)改成以10为底的常用对数,并最早做出了对数表。我上中学时还使用过对数表,现在有了方便的计算器,这种对数表应该没人用了吧。
当时,还有一种纳皮尔算筹(Napier's bones),也称纳皮尔计算尺,就是按其著作设计的,可以用加法和一位数乘法代替多位数乘法,用除法和减法代替多位数的除法,其实也算是一种方便的计算器。有研究者认为纳皮尔算筹基于印度的格子乘法及阿拉伯人的计算方法。而著名天文学家开普勒进行行星轨道的计算时就使用了纳皮尔算筹,所以被法国数学家、天文学家拉普拉斯评价为“用缩短计算时间延长了天文学家的寿命”。后来,英国人奥特雷德(William Oughtred)被认为是直线对数计算尺和圆形计算尺的发明者,当然也有一些争议。计算尺的发明在帕斯卡机械加法器之前,大约1620年代。后世一些人逐渐完善了计算尺这种便携的计算工具,成为工程师的必备,从而变成身份的象征。直到1970年代,计算尺才被惠普公司的HP-35计算器及其他计算器终结。在中国,1970年代以前,学理工的基本人手一把计算尺,可能有些还用到了80年代初期,我小时候还见过对数计算尺。
帕斯卡发明的装置,其实也是一种计算器,机械式计算器,后来又被加入减法等功能,德国人莱布尼茨(Gottfried Wilhelm Leibniz)加入了重复计算功能,即可以做乘法。据说莱布尼茨还是第一个研究二进制运算的人,这是后来电子计算机运算的理论基础,但没有找到详细的资料,不知已完成了哪些运算规则。
法国人托马斯·德·科尔(Thomas de Colmar)于1851年设计了一种可以做加减乘法四则运算的计算器,这是一部实用的装置。1878年,德国人Burkhardt开始批量生产德·科尔式的计算器。1886年,美国人费尔特(Dorr Eugene Felt)发明了使用按键的计算器Comptometer,并于次年与他人合作建立了工厂,生产这种计算器,并取得了商业成功。1885年,在俄国的瑞典企业家Odhner的工厂也开始生产经过改进的这类机械式计算器,后来发展出很多苏俄的计算器机型,中国发展原子弹时也使用过这种手摇式计算器,直到1970年代仍在很多地方使用。
上述介绍的早期计算机,其实严格意义上来说都是计算器,因为都只能做设定的加、减、乘、除、平方、开方这类的运算,与现代意义上的可编程的计算机其实有很大不同。但现代计算机其实也是在这种功能特定的计算装置上发展起来的,所以也算其起源。其实,早在机械时代,已有一些可编程的装置了,这并不是用来计算的,而是一种纺织机械--提花编织机。
织布,其实用经线(纵向线)与纬线(横向线)相互交错穿过而形成。如果是织一种颜色的布,把奇数的经线固定在一个装置上,而把偶数的经线固定在另一个装置上,两个装置一上一下,并不断交替位置,每次交替位置时就有梭子牵着纬线在中间穿过,形成一个个交叉,这样就能形成平整的布。但如果要在上面形成图案,就比较麻烦,经线不再是固定地奇偶分开,而要不断变化。为了达到这种目的,必须按预先设定的图案,人工提起一部分经线,让梭子牵引某种颜色的纬线通过,然后再提起另一些经线,让梭子牵引另一根纬线穿过,如此重复地进行下去。因为每次提起的经线编号不同,要不断改变,所以很繁琐,操作很慢,需要耗费大量人工。中国古代的织机就是这样实现的。
1725年,法国里昂的机械师布乔(Basile Bouchon)使用了穿孔纸带方法。他使用一排编织针来控制经线运动,并在一卷纸带上打下一排排的孔,压在编织针上。机器启动后,正对着位置有小孔的编织针就能穿过而勾起对应的经线,而没有孔的地方的编织针对应的经线就不被提起,下一循环时用纸带上的另一排小孔来控制,这样被提起的经线就不同了。如此反复,小孔位置的变化就改变了被提起的经线的位置,也就改变了最终形成的图案。但布乔的机器还需要一个操作工来进行控制并消除意外出现的错误。
后来,这种方案又经几次改进,换成一种厚纸板做的卡片,上面有多排孔,多张卡片组合使用就能自动完成一种编织图案,这是由法国人杰卡德(Joseph Marie Jacquard)完成的,最多能同时操纵1200个编织针,形成精美的图案。在1805年的里昂工业展览会上,这种提花编织机受到当时法国皇帝拿破仑的赞赏,并授予勋章。
这种编织机流传开来,而这种使用穿孔纸带和卡片的自动控制方式也一直沿用了下来,直到100多年后的1950年代,早期的电子计算机还在使用这种方法来输入数据并存储程序,当时的计算机程序就是这样的一卷卷纸带及卡片。
1890年时,美国搞人口普查,也使用了一种穿孔卡片,用霍列瑞斯(H.Hollerith)博士专门设计的制表机(tabulator)来读取信息,加快了统计过程。后来,这种制表机逐渐推广到很多商业领域,形成打孔机、制表机等一系列产品,而制作销售这系列产品的公司后来发展成计算机巨头IBM(国际商用机器公司)。这种制表机,其实是一种机电式计数器,现在看来很简单,但在当时却是一个了不起的发明,产生了可观的效益。当然,这种制表机已属于一种机电装置,不只是机械装置。1936年,IBM还推出了一种打孔乘法计算器IBM 601,可以读取卡片上用打的空表示的两个数字并进行乘法运算,然后打孔输出结果。
因为受到提花编织机的启发,1834年,英国人巴贝奇(Charles Babbage)产生了根据使用穿孔卡片进行任何数学运算的设想,但在当时仅有的机械技术条件下,无法使其变成现实。这应是最早的关于可编程的计算机的设想了。
在19世纪,一些科学家在对流体、热力学等方面的研究中,已经推导出一些微分方程,为了求解这些方程,有人设想了一类复杂的模拟计算机,但一般也是一种专用计算装置。第一种实用的这类模拟计算机是威廉·汤姆森(William Thomson,即凯尔文男爵)在1872年设计的潮汐机(tide-predicting machine),后来Arthur Pollen把这类机器用于海军的火控系统中,用电气设备来驱动。1927年,麻省理工学院的Harold Locke Hazen和Vannevar Bush设计出微分分析机(differential analyzer),后来的英国人Douglas Rayner Hartree等对其进行了发展,在设计研究潜艇、鱼雷、飞机等很多军事装备中都起到重要作用,其中一些一直使用到二战结束。
Copyright@dwenzhao.cn All Rights Reserved   备案号:粤ICP备15026949号
联系邮箱:dwenzhao@163.com  QQ:1608288659