程序设计语言的层次体系程序设计语言分为低级语言和高级语言两类。“级”是指程序员与计算机对话的复杂程度。例如,就查询语言来说,程序员(经常是用户管理人员)只需要涉及到计算机“做什么”,而不必涉及到计算机“怎样做”。在高级语言中,程序员必须提供详细说明“做什么”和“怎样做”的指令,而软件工具将帮助简化程序员的工作。低级语言要求程序员详细说明由计算机执行的每一级操作。在使用高级程序设计语言时,程序员不必记住数据在主存中的存储单元。这是由系统自动做的。而在使用低级语言时,程序员必须在程序中提供相应的逻辑,以便监视数据在主存中的物理位置。低级语言虽然人们用COBOL、PASCAL和FORTRAN来谈论程序设计,但是只有一种语言能够在给定的计算机上执行。那就是所谓的机器语言。所有其他语言都要被编译(翻译成机器语言),并且最终用机器语言来执行。机器语言是很繁琐的,因为指令(又称操作码或OP码)和运算数据的单元是用二进制(一串0和1)来表示的。符号语言(有时称作汇编语言或汇编级的语言)具有一个本质上与机器语言一一对应的指令系统。汇编语言的优点是它用助记符号而不是用0和1来表示指令。例如,汇编语言中直接用“A”来表示“加”指令,而不用一串0和1来表示。在1970年之前,机器级和汇编级语言常常用于应用程序的开发,特别用于系统软件的开发。当时信息服务人员认为目标程序利用计算机的效率高。自那时以来使用高级语言无论在发挥人或是计算机的效率上都超过了机器语言。由于这一原因,多数现行的程序设计都是用高级语言来完成的。高级语言1.面向过程的语言面向过程的语言(POL)是极其灵活的,可以用来刻划几乎所有科学的和商业的过程。程序顺序地编写指令,而系统则根据用户的规定进行处理。例如,工资系统就是使用POL来编定的。除非由程序逻辑控制去做其他事情,否则程序中的每一条指令都是按顺序执行的。在一个工资单生成系统中,执行程序指令的特定顺序取决于被处理的职工的工资计算方法(是按月发工资,还是按工时计算工资)。对每个职工都要重复该程序流程的顺序。有三种主要的POL:科学计算的、商用的以及多用途的。下面我们分别讨论每一种POL。(1)科学计算的语言。科学计算的语言是代数或公式化的语言。这种语言是为了满足典型的科学计算处理要求(矩阵操作、精度计算以及其它方面)而设计的。第一个而且仍然是最为流行的科学计算语言是FORTRAN(公式翻译程序的缩写)。尽管在没有商业语言时(在计算机不支持任何其它语言的情况下)FORTRAN已作为一种商用语言来使用了,但是FORTRAN的商业处理能力是有限的。APL语言很快地抓住了一些用户(主要是工程师)。APL是唯一使用带有专用符号的交互式键盘来编写程序的语言。(2)商用语言。目前很流行的第一个商用语言是COBOL(面向商业的公用语言的缩写)。它是一种功能很强而又极为冗长的语言。发展COBOL语言的前提是:该语言的语句应该近似于英语。有些程序员发现语言使用起来很麻烦。然而,COBOL语言尚处于方兴未艾的时期,而且被广泛地接受。今天,人们正在继续对它进行改进。在若干年内,COBOL仍将是一种流行的商用语言,但是使用该语言的相对百分比将会下降。COBOL最适合于具有循环处理周期的环境(例如打印工资支票)以及数据操纵量相当大的环境。美国国家标准研究所(ANSI)已经对COBOL和其他语言建立了标准。建立这些标准的目的是使得在一台计算机上编写的程序可以移植到另一台(即另一个厂商制造的)机器上去。不幸的是,ANSI标准很少被遵循;因此,COBOL程序只是部分可移植的。报表程序生成程序(RPG)可能是仅次于COBOL的最为流行的商业语言了。最初设计的RPG是在IXX公司数据录入级的计算机上使用的。它用于一些成批处理环境的小型商业工作。RPG与其它POL不同之处在于程序员还必须通过选择所要求的程序设计特色来说明某些处理要求(例如何时打印小计记录的选择等等)。BASIC设计者的最意图体现在该语言的名字上——初学者通用的符号指令码(BaginersAll-PurposeSymbolicInstructionalCode)。最初它被当作讲授程序设计的一个工具,但是在这个“初学者”语言的能力被充分扩充后,它变得如此流行,以致目前BASIC是小型计算机系统上用于应用程序设计的一种...