正在加载图片...
Chinapub.com 第章高语言和缓语言255 下载 言同样也不包括按位的逻辑运算 早先的家用计算机中,许多应用程序是用汇编语言编写的,而现在除非有特殊需要,汇 编语言已经很少用到。由于已在处理器中添加了一些硬件来实现流水线技术一同时有多个 指令码累进执行——汇编语言则变得更难以掌握。与此冋时,编译程序却逐步走向成熟。现 代计算机的大容量存储能力也在这种趋势——程序设计员不再满足于编制在小的内存和磁盘 上运行的代码一中也扮演着重要角色。 尽管许多早期计算机的设计者都试图用代数符号来闸明他们的观点,但通常认为第一个 真正成功的编译程序是由 Grace Murray Hopper(1906-1992)于1952年在雷明顿为 UNIVAC 而设计的A-0。当 Hoppert博士1944年为 Howard Aiken工作时,就已开始了计算机的早期研究 工作。在她80多岁时,仍然活跃在计算机界,为DEC公司作一些公关工作 今天仍然在使用的最古老的高级语言(尽管这些年中得到了广泛的修改)是 FORTRAN 许多计算机语言的名字都是大写字母,因为它们是由许多单词的首字母构成的。 FORTRAN是 由 FORmula前3个字母和 TRANSlation的前4个字母混合而成,是在20世纪50年代中期由IBM 公司为704系列计算机开发的。多年来, FORTRAN一直被选作为科学和工程的计算语言,它 广泛支持浮点运算甚至支持复数运算。 所有计算机语言都有它们的支持者和批评者,并且人们可能只热衷于他们所喜好的语言。 尽量站在中立的立场上,我选择一种语言作为原型来解释那些差不多再没有人用的程序设计 概念。这种语言的名字是 ALGOL(即 ALGOrithmic Language)。 ALGOL也可用来探索高级程 序设计语言的本质,因为从某种意义上来说它正如一粒种子,成为过去40年来许多流行的通 用语言的直接祖先。甚至在今天,人们也用到“类 ALGOL”的程序设计语言。 它的第一个版本是 ALGOL58,由一个国际委员会在1957~1958年设计而的。两年后,即 1960年进行了修改,修订版命名为 ALGOL60。最后的版本是 ALGOL68。本章用到的 ALGOL版本在文档“ Revised report on the Algorithmic Language ALGOL60”中有描述,该 文档在1962年完成,1963年第1次印刷 让我们来编写一些ALGOL代码。假设一个名为ALGOL.COM的编译程序运行在CPM或 MS-DOS下。第一个 ALGOL程序是一个名为 FIRSTALG的文本文件,注意它的文件类型 个 ALGOL程序必须由 begin和end作为开始和结束,以下为显示一行文本的程序: begin print('This is my fist ALGOL program! ' ende 可以用 ALGOL编译程序来编译 FIRSTALG程序,操作如下: ALGOL FIRSTALG ALGOL编译程序的响应可能是显示类似于下面的内容: Line 3: Unrecognized ke ALGOL对拼写的挑剔不亚于传统的英语教师。在输入程序时若拼错了单词end,编译程 序则会告知程序有一个语法错误。当它碰到ende时,它希望那是它可以识别的关键字 修改了错误以后,可以再运行 ALGOL编译程序。有时,编译程序会直接生成一个可执行 件(名为 FIRST COM,或者是MS-DOS下的 FIRSTEXE):有时,还需要进行另一个步骤。 无论怎样,你都可以从命令行运行 FIRST程序:言同样也不包括按位的逻辑运算。 早先的家用计算机中,许多应用程序是用汇编语言编写的,而现在除非有特殊需要,汇 编语言已经很少用到。由于已在处理器中添加了一些硬件来实现流水线技术—同时有多个 指令码累进执行—汇编语言则变得更难以掌握。与此同时,编译程序却逐步走向成熟。现 代计算机的大容量存储能力也在这种趋势—程序设计员不再满足于编制在小的内存和磁盘 上运行的代码—中也扮演着重要角色。 尽管许多早期计算机的设计者都试图用代数符号来阐明他们的观点,但通常认为第一个 真正成功的编译程序是由 Grace Murray Hopper(1 9 0 6-1 9 9 2)于1 9 5 2年在雷明顿为U N I VA C 而设计的A - 0。当H o p p e r博士1 9 4 4年为Howard Aiken 工作时,就已开始了计算机的早期研究 工作。在她8 0多岁时,仍然活跃在计算机界,为 D E C公司作一些公关工作。 今天仍然在使用的最古老的高级语言(尽管这些年中得到了广泛的修改)是 F O RT R A N。 许多计算机语言的名字都是大写字母,因为它们是由许多单词的首字母构成的。 F O RT R A N是 由FORmula 前3个字母和T R A N s l a t i o n的前4个字母混合而成,是在 2 0世纪5 0年代中期由I B M 公司为7 0 4系列计算机开发的。多年来, F O RT R A N一直被选作为科学和工程的计算语言,它 广泛支持浮点运算甚至支持复数运算。 所有计算机语言都有它们的支持者和批评者,并且人们可能只热衷于他们所喜好的语言。 尽量站在中立的立场上,我选择一种语言作为原型来解释那些差不多再没有人用的程序设计 概念。这种语言的名字是 A L G O L(即ALGOrithmic Language)。A L G O L也可用来探索高级程 序设计语言的本质,因为从某种意义上来说它正如一粒种子,成为过去 4 0年来许多流行的通 用语言的直接祖先。甚至在今天,人们也用到“类 A L G O L”的程序设计语言。 它的第一个版本是A L G O L 5 8,由一个国际委员会在 1 9 5 7~1 9 5 8年设计而的。两年后,即 1 9 6 0年进行了修改,修订版命名为 ALGOL 60 。最后的版本是 ALGOL 68 。本章用到的 A L G O L版本在文档“Revised Report on the Algorithmic Language ALGOL 60”中有描述,该 文档在1 9 6 2年完成,1 9 6 3年第1次印刷。 让我们来编写一些 A L G O L代码。假设一个名为 A L G O L . C O M的编译程序运行在 C P / M或 M S - D O S下。第一个A L G O L程序是一个名为F I R S T. A L G的文本文件,注意它的文件类型。 一个A L G O L程序必须由b e g i n和e n d作为开始和结束,以下为显示一行文本的程序: begin print('This is my fist ALGOL program!'); ende 可以用A L G O L编译程序来编译F I R S T.ALG 程序,操作如下: ALGOL FIRST.ALG A L G O L编译程序的响应可能是显示类似于下面的内容: Line 3: Unrecognized keyword 'ende'. A L G O L对拼写的挑剔不亚于传统的英语教师。在输入程序时若拼错了单词 e n d,编译程 序则会告知程序有一个语法错误。当它碰到 e n d e时,它希望那是它可以识别的关键字。 修改了错误以后,可以再运行 A L G O L编译程序。有时,编译程序会直接生成一个可执行 文件(名为F I R S T. C O M,或者是M S - D O S下的F I R S T. E X E);有时,还需要进行另一个步骤。 无论怎样,你都可以从命令行运行 F I R S T程序: 第24章 高级语言和低级语言 255 下载
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有