|
仲萃豪主持研制了中国第一个编译程序,不管是方法还是效果都处于世界前列。
“1956年国家紧急措施发展计算机,在北京西苑大旅社3号楼成立了中国科学院计算机研究所(以下简称计算所)”,仲萃豪提起50多年的往事,依然记忆犹新。“教育部从复旦大学、武汉大学、东北人民大学的数学系各抽调3名三年级学生,参加计算所”,当时的仲萃豪是复旦大学数学系的三年级学生,刚刚22岁,他有幸成为被抽调进京的一员。
20世纪50年代中期,中国在硬件方面,通过研究仿制苏联的计算机,生产了中国首批计算机。同时,作为计算机工作不可缺少的一部分—计算程序的研制和开发工作也同时开始。仲萃豪成为了中国首批软件专家之一。
为第一个编译程序做准备
来到北京,所有的学生被安排进了西苑大旅社,但是很多人不能适应在旅店的学习生活,于是请求转入北京大学的计算数学专业学习。在北大,他们学习了数理方程、无线电原理,参加了计算方法的讨论班。一年之后,1957年,仲萃豪在北京大学取得了毕业证书。高教部对所有学生进行分配,一部分学生到了计算所,仲萃豪就是其中一员。
进入计算所做的第一件事,与计算机没有什么关系。“此时的计算所正在中关村建造北楼,于是我们参加了3个月的劳动。”挖土、搬运,干了很多脏活、累活。对于刚刚从大学毕业的学生来说,这是一份苦差事。北楼建成后,他们搬了进去。在自己亲手搭建的大楼里工作,别有一番滋味。
1957年秋,计算所请来了苏联科学院计算中心的斯梅格列夫斯基气动力学专家,讲授“机器数学”课程。内容包括程序设计基础、程序自动化、程序的检查机器自动化、机器上的工作组织问题、试验机器的检验程序等课题,主要围绕苏联的M-3和箭牌计算机讲。专家讲完程序设计基础之后,又专门为程序组讲了叶尔晓夫一书的手稿,把苏联利亚普诺夫的算子法介绍到中国。
1958年夏天,苏联专家回国。耿立大翻译并出版了叶尔晓夫的书—《快速电子计算机编制程序的程序》。这是中国出版的第一本关于程序自动化的书。仲萃豪等人又仔细研读了这本书,这是他后来设计中国第一个编译系统的基础。除此之外,Fortran语言也是他们研究的主要对象,其中Fortran II作为其中一个版本成为他们最终设计编译系统的另一个基础。
在正式对计算机设计编译系统之前,仲萃豪所在的程序组就已经做好了理论、思想方面的准备。
初生牛犊不怕虎
1958年5月开始的第一台大型通用电子计算机(104机)的研制,于1959年国庆节前完成了研制任务。
仲萃豪此时正任程序组的组长,年纪不大的仲萃豪,胆子可不小。当领导提出让他做程序组的组长时,他爽快地应承下了,这时他进入计算所才一年左右。他们的任务就是要为104机研制编译程序。原来程序组只有仲萃豪、董韫美、李开德、卢慧琼4人。由于在“大跃进”的形势下各地纷纷成立科学院分院,许多院校上马搞计算机。所以派了很多人来计算所进修。原来冷清的程序组一下子增添了十多名进修人员,人手多了,工作也容易开展了。
1960年5月,程序组正式开始了104机编译程序的工作。仲萃豪等人首先进行总体设计,然后将整个编译系统分成若干部分,每一部分由其他组员进行编写。此时已经有100多人庞大的编码队伍。
计算所此时只有一台104计算机,还有其他重要的单位经常使用。留给程序组使用的时间少之又少。在程序组里,也只有组长仲萃豪一人能够上机使用。“其他人编码都是手编的”,当时的工作量非常大。但是组员们个个都是精兵强将,很多都是北京大学、清华大学数学系的学生,所以这些根本难不倒他们。
大家每次做出一些程序,仲萃豪就要见缝插针地上机操作,如果程序不对,也要马上下来,查找错误,再抽空上机。就这样,用了一年多的时间,完全手工的编制出了104机的编译程序,它成为中国第一个编译程序。1960年在计算机第一次会议上发表了关于此的文章。
仲萃豪完成了104机的编译程序后不久,计算所就将他派到了机器翻译组任组长。但是仲萃豪对机器翻译并不感兴趣。109-乙机的诞生让他重拾老本行。
1965年,中国第一台大型晶体管通用计算机—109-乙机在中科院计算所研制成功了。它的体积变小了,但是内存变大了,硬件完成后的首要任务是给它配上“翻译”。
在设计104机编译程序之后,程序组总结了经验教训,觉得苏联算子法并不是很完美,当时做出的编译程序需要扫描很多次才能完成语义分析、语法分析、优化等功能。
他们将注意力转移到了1960年诞生的算法语言ALGOL60上。在对它的研究基础上,设计中国自己的算法语言BCY,“此时,我没有在程序组,所以没有参与BCY的研发。”仲萃豪讲到此难免感到有点遗憾。但是他还是搜集了大量国外关于ALGOL60的资料,仔细研读,并学习了BCY语言。
因此仲萃豪在设计109-乙机的编译程序时,就采用了ALGOL60和BCY的思想,“这样设计出来的编译程序只需要扫描一次,就能够将高级语言编译为机器能够直接识别的指令,效率高了很多。”
编译程序方面,仲萃豪不仅是中国的带头人,也是不断跟随国际潮流,站在时代前沿的人,他设计的编译程序在当时与国外几乎是同步的,甚至比前苏联还要领先许多。
仲萃豪, 研究员,我国第一代知名软件专家和学术带头人之一。1934年9目10日出生于上海市,1957年毕业于北京大学数学力学系计算数学专业,之后在中科院计算所工作,1985年调入中科院软件所工作,迄至退休。
其间曾任软件所学术委员会主任、室主任、博士生导师、北京市政府顾问、国家科技攻关重大项目—CASE工具环境总体组副组长,承担多项国家科技攻关专题项目。率先开展对编译程序、编译语言、操作系统、支撑软件、应用软件诸领域有关课题的研究。
109-乙机的编译程序利用了中国自己开发的算法语言
|