报纸定位

注册

 

发新话题 回复该主题

计算机鼻祖DonaldKnuth [复制链接]

1#
辽宁白癜风医院 http://baidianfeng.39.net/a_zhiliao/160103/4753196.html

DonaldKnuth自传的开头这样写道:“DonaldKnuth真的只是一个人么?”作为世界顶级计算机科学家之一,Knuth教授已经完成了编译程序、属性文法和运算法则的前沿研究,并编著完成了已在程序设计领域中具有权威标准和参考价值的书目的前三卷。在完成该项工作之余,Knuth还用了十年时间发明了两个数字排版系统,并编写了六本著作对其做了详尽的解释说明,现在,这两个系统已经被广泛地运用于全世界的数学刊物的排版中。随后,Knuth又发明了文件程序设计的两种语言,以及“文章性程式语言”相关的方法论。

到目前为止,Knuth已经出版发行了17部书籍,一百五十余篇论文,包括了巴比伦算法、圣经、字母“s”的历史等多方面的内容。作为一名数学家,Knuth曾开创了几门新的课程,为纯计算数学做出了很大贡献。他所获得的奖项和荣誉数不胜数,其中最值得注目的有年美国计算机协会图灵奖(ACMTuringAward),年美国前总统卡特授予的科学金奖(MedalofScience)以及年11月由于发明先进技术荣获的极受尊重的京都奖(KyotoPrize)。在不多的业余时间里,Knuth不仅写小说,还是一个音乐家、作曲家、管风琴设计师。

是Knuth独特的审美感决定了他兴趣广泛、富有多方面造诣的特点,Knuth传奇般的生产力也是源于这一点。对于Knuth来说,衡量一个计算机程序是否完整的标准不仅仅在于它是否能够运行,他认为一个计算机程序应该是雅致的、甚至可以说是美的。计算机程序设计应该是一门艺术,一个算法应该像一段音乐,而一个好的程序应该如一部文学作品一般。

早期经历

Knuth,年1月10日生于美国威斯康星州密尔沃基市。他在模式方面辨别和熟练操作的能力在八年级的时候开始显现出来。当时,当地的一家糖果制造商举办了一项比赛,比赛要求选手用其品牌“ZieglersGiantBar”中的字母组成新的单词,规定时间内组成单词数量最多者获胜。Knuth参加了比赛,并以单词总数余个远远超过了裁判的个的标准,轻松赢得头奖。赛后,Knuth说道,如果自己当初想到回答时用些省略符号的话,还能写出更多。这次比赛Knuth为学校赢得了一台电视机,还为每个同学赢得了一根糖果棒。

数学上,克努特也很早就表现出天才。高中一年级时,他发明了一种方法,利用这种方法,对任意画出的2条相交直线,他能立即给出相应的方程。

Knuth多产的出版事业开始于他的高中时代,当时他的科技设计被WestinghouseScienceTalentSearch光荣提及。他的“PotzebieSystemofWeightsandMeasures”的基础章节被登在“Mad”杂志第26号,“Power”的基础章节被叫作“whatmeworry”。“Mad”的编辑认识到了年轻的Donald著作的重要性,以25美元买下了他的文章,并刊登在了其年6月的期刊上。

高中的时候,Knuth对数学并没多大兴趣,而是把主要精力放在主修的课程:听音乐和作曲上。他在高中的乐队里吹萨克斯、大号时,曾把Dragnet、HowdyDoodyTime和Brylcream的主题曲联成一段新的音乐。这位著名的科学家在近期评论自己的早期作品时承认:“对于版权,我一无所知。”

年,克努特以各科平均97.5的创记录的高分从密尔沃基路德兰高级中学毕业,进入俄亥俄州克利夫兰的开思理工学院(CaseInstituteofTechnology)攻读物理。这一年,他在中学时就创作的一篇出色的科学幻想小说“普茨比度量衡体系”(ThePotrzebieSystemofWeightsandMeasures)在美国著名的《疯狂》(Mad)杂志上发表,克努特获得了他的第一笔稿费25美元,并因而获得西屋科学天才的提名奖。在这篇小说中,克努特风趣而富于幻想地提出了替代公制的一种新的计量制度,比如以一本流行杂志的厚度为长度单位,虽然滑稽可笑,却设计得严密周到,天衣无缝,其中甚至还包括一种新的历法。文章刊出后大受欢迎,多次重印,年还重印过一次,其时作者克努特即将退休。

虽然Knuth的等级平均分是学校历史上最高的,但是他和他的指导老师还是对他能否成功学习大学数学持怀疑态度。Knuth说在他高中阶段和大学早期一直有一种自卑感,这个问题一度是他的一个障碍。作为一个大学新生,Knuth没有对于失败的恐惧,他花了许多时间攻克额外的数学难题,几个月后,他在这方面的能力已经远远超过了其他同学。

高等教育和早期的计算机工作

当Knuth在Case科学院(现在的CaseWesternReserve)获得物理奖学金时,梦想成为一个音乐家的计划改变了。Knuth回去继续研究数学是在大二,当时一个爱出难题的教授提出了一个特殊的问题,并说哪个学生能解决这个问题就立刻记成绩“A”。Knuth跟大多数同学一样,也认为那是道解不出来的题目,直到有一天,他错过了公共汽车,只能步行去看一个演出,Knuth利用路上这点空闲时间决定尝试一下。那阵子他运气真的是非常好,不仅问题很快就解开了,得到了“A”,还成功地经常逃课。虽然Knuth也承认,逃课让他有负罪感,但是很明显,他完全有能力补上落下的功课,接下来的一学年,他的离散数学就又得了个“A”,而且还获得了给自己不能参加的课程评定论文等级的工作机会。

年,作为Case的新生,一年级结束以后的暑假,克努特在学校打工,负责把统计数字画成图表。碰巧他工作室的隔壁就是计算机房,新到了一台IBM。当时的计算机体积都很庞大,有供输入和调试的控制台,上面排列着一排排的开关和指示灯,计算机工作时指示灯快速闪烁变化出不同的图案,这引起克努特极大的好奇与兴趣,他接连好几天彻夜不眠地呆在机房,观察它的工作,钻研使用手册,探究计算机的奥秘。一年以后,他终于改学数学,与计算机结缘。这段经历对于克努特是如此重要和关键,以致他在《计算机程序设计的艺术》第一卷的卷首,不像别的作者那样一般写上“献给自己的父母”或“献给自己的妻子”,而是写着“献给曾经安装在开思理工学院的型计算机,以纪念那些愉快的夜晚”。

天天与计算机为伍,Knuth说直到一年后,女孩才进入了他的生活。这又是计算机科学界一直以来亏欠科学家们的一个事例之一。

Knuth熬夜读IBM的说明手册,自学基本的程序设计。那时,在高等计算机语言发明之前,程序编写只能用第二代或是汇编语言。这个工作既耗时又困难,因为指令必须根据每台机器特定的构造编写,而实际上指令只须一步就可从二进制0、1系列转存到计算机硬盘上。Knuth说,有了第一次使用的经历,他便肯定自己能编写出比说明手册上介绍的更好的程序。

Knuth很快便开始“闲逛”,编写可以执行数学函数的程序。他的第一个程序是把数字转化为素数,第三个是做井字游戏(或者说是让计算机在改正每次输的错误的过程来学会玩井字游戏)。他的第一个计算机应用程序也是在计算机上实现的:他为他所在的校篮球队(克努特人高马大,也喜爱运动,娱乐)设计了一个复杂的公式,根据球员在每场比赛中的得分、助攻、抢断、篮板球、盖帽等多项统计数字对球员进行综合评估。球队教练根据克努特的程序挑选和使用球员,使开思理工学院在年赢得了联赛冠*,克努特的“神奇的公式和程序”也被当地报纸和广播传为美谈。

作为学校篮球队的经理,Knuth编写了一个根据不同成绩标准评定每个运动员对球队贡献等级的程序,他的努力赢来了那些认为这样做有助于球队赢得同盟冠*的教练的好评(虽然,无庸质疑,不是每一个运动员都这样认为)。Knuth的成就成了新闻周刊的标志,他和教练、计算机的照片也被刊登在IBM后来的说明手册上,当然这也是Knuth的第一个计算机应用程序。

年,Knuth从Case毕业时享有着最高荣誉,在由全体教员参加的选举上,他因其公认的出众成就不但被授予学士学位,还被破例同时授予硕士学位。之后他进入加州理工学院研究生院,年获得博士学位,留校工作至年,然后转入斯坦福大学任教,其间—年曾经在奥斯陆大学当客座教授。

年,Knuth回到加利福尼亚理工学院攻取了数学博士学位,之后成为了该院的数学教授。在加利福尼亚理工学院任教期间,Knuth作为Burroughs公司的顾问继续从事软件开发工作。年,他加入了斯坦福大学,九年后坐上了该校计算机科学学科的第一把交椅。年,Knuth成为斯坦福大学“theArtofComputerProgramming”(计算机程序设计艺术)的荣誉退休教授。

超实用性的Python零基础入门到进阶视频源码淘宝¥2购买已下架
分享 转发
TOP
发新话题 回复该主题