900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 编程语言小传之 零.第一个研究写程序的女人

编程语言小传之 零.第一个研究写程序的女人

时间:2023-04-24 18:32:06

相关推荐

编程语言小传之 零.第一个研究写程序的女人

大家知道,第一次工业大革命开始于纺纱、织布机的发明应用。而现代计算机的发明,也跟织布有关系。虽然在第一次工业革命后,布匹可以用机器大规模织出来了,但如果要织出复杂图案,还是只能依赖于人工操作提花织布机。而杰拉德在19世纪初,推广了他改进的提花织布机。他的做法是通过穿孔纸卡预先设定好操作步骤,让机器根据纸孔有无来提起、放下某根特定的经线,实现自动织出花布来,比如在花布上写出“HelloWorld”。杰拉德改进的织布机被称为杰拉德提花织布机,很快在西方世界得到推广应用。

受到杰拉德提花织布机的启发,被称为“现代计算机之父”的英国科学家巴贝奇于18设计了“差分机”,并在18制造出制造出模型,可以处理3个不同的5位数,计算精度达到了6位小数。受此鼓舞,英国政府出资资助他动手设计、制造计算精度达20位的大型差分机。但是在花费了和3万多英镑(在当年绝对是巨款了)之后,巴贝奇只得放弃制造这个机器。

1842年,英国政府放弃资助他,他本人成为科学界的笑柄,研制差分机又几乎花光了他所有的钱——在他人生最低谷的时候,一个27岁的伯爵夫人——阿达·奥古斯塔(AdaAugusta)来到了他身边,和他一起并肩工作。巴贝奇没有放弃他的梦想,他甚至提升了梦想,要研制一台通用计算机——他管它叫“分析机”。他希望这个新机器能够做复杂的计算,有类似于现代计算机的输入、输出、运算器、控制器、存储器的五大结构。

而阿达则负责为这台未来机器编程,她认为“分析机‘编织’的代数模式同杰卡德织布机编织的花叶完全一样”。阿达开天辟地第一次为计算机编出了程序,其中包括计算三角函数的程序、级数相乘程序、伯努利函数程序等等。她写信告诉巴贝奇,她为计算“伯努利数”写作了一份规划。以现在的观点看,阿达首先为计算拟定了“算法”,然后写作了一份“程序设计流程图”,然后是“程序”。她建立了循环和子程序概念,她被公认为第一位给计算机写程序的人。1843年发表的一篇论文里,阿达认为机器今后有可能被用来创作复杂的音乐、制图等,这不仅在当时是十分大胆的设想,即使在电子计算机时代早期,也是不可思议的。要知道,IBM的创始人老沃森,曾经预测全球只需要5台计算机,比尔·盖茨在上世纪90年代曾预测个人电脑只需要500M硬盘就足够了,而阿达的预见是在当时巴贝奇计划用蒸气机作为分析机动力的年代!

阿达当时已经是3个孩子的母亲了,她出身显贵,身为伯爵夫人,却跟巴贝奇这个名誉扫地、又没什么钱的家伙一起搞研究。以至于为了筹措经费,他们制作什么国际象棋玩具,什么赛马游戏机等等来赚钱。阿达甚至两次把丈夫家里的祖传珠宝送进当铺,最后还要她母亲给赎回来。1852年,怀着对分析机成功的美好梦想,阿达病逝,死时年仅36岁。

阿达去世后,巴贝奇又默默地独自坚持了近。 1871年,巴贝奇去世了,至死,他的分析机还是没有制造出来。他的研究资料被保存于英国皇家博物馆。1991年,为了纪念巴贝奇200周年诞辰,英国肯圣顿(Kensington)科学博物馆根据这些图纸重新建造了一台分析机。复制过程中,只发现图纸存在着几处小的错误。复制者特地采用18世纪中期的技术设备来制作,不仅成功地造出了机器,而且可以正常运转。

本文题目之所以要用“第一个研究写程序的女人”,而不是“第一个研究写程序的人”,是我觉得巴贝奇能想出做这么一台能计算的机器,却没考虑到程序实现,是不可能的事儿。只不过他主要关注硬件实现,程序的事情考虑较少或没有深入思考与研究。当然,即使不是第一个想到写程序,也无损于阿达女士的伟大。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。