首页 理论教育就搞定了:程序设计语言分类|信息技术教程

就搞定了:程序设计语言分类|信息技术教程

【摘要】:程序设计语言按照语言级别可以分为低级语言和高级语言。汇编语言曾经是非常流行的程序设计语言之一。除了按语言级别分外,程序设计语言还可以按照用户的要求分为过程式语言和非过程式语言。按照应用范围,程序设计语言有通用语言与专用语言之分。按照使用方式,程序设计语言有交互式语言和非交互式语言之分。

程序设计语言按照语言级别可以分为低级语言和高级语言。

低级语言有机器语言和汇编语言两种。低级语言与特定的机器有关,其功效高,但使用复杂、繁琐、费时、易出差错。

机器语言是直接用二进制代码表达的计算机语言,指令用0和1组成的一串代码来表示。机器语言是一种面向机器的编程语言。用机器语言编写的程序可以直接被计算机识别和运行。机器语言是计算机能够直接识别和运行的唯一语言。由机器指令构成的、完整的、可直接运行的程序称为“可执行程序”,相应的文件称为“可执行文件”。机器语言具有直接执行和运行速度快等优点。但是由于机器语言与硬件的关系十分密切,不同类型计算机的指令系统不同,因此不同类型计算机的机器语言编写的程序并不通用。而且,机器语言程序是直接用二进制代码编写的,人们难于记忆和理解,后期修改和维护也很困难,所以现在已不用机器语言编制程序了。

汇编语言用容易理解和记忆的助记符来代替机器指令的操作码和操作数地址,这样就可以使机器指令用符号表示而不再用二进制表示,从而增强了程序的可读性,使得程序更加直观,更容易被人们理解和记忆。汇编语言曾经是非常流行的程序设计语言之一。汇编语言里的每一条指令都对应着处理器的一条机器指令,其执行速度快,代码体积小,在那些存储器容量有限但需要快速和实时响应的场合比较有用,比如仪器仪表和工业控制设备中。在系统程序的核心部分以及与系统硬件频繁打交道的部分可以使用汇编语言,比如操作系统的核心程序段、I/O接口电路的初始化程序、外部设备的底层驱动程序,以及频繁调用的子程序、动态链接库、某些高级绘图程序、视频游戏程序等。汇编语言可以用于软件的加密和解密、计算机病毒的分析和防治以及程序的调试和错误分析等各个方面。Linux内核在某些关键地方使用了汇编代码,由于这部分代码与硬件的关系非常密切,从而可最大限度地发挥硬件的性能。但汇编语言的缺点是面向机器,不同的处理器有不同的汇编语言语法和编译器,在一种处理器中编写的程序无法在其他处理器上执行,可移植性比较差。另外,汇编语言对程序设计人员的硬件知识要求也比较高,程序设计人员掌握起来比较困难。

高级语言是一种接近人类自然语言(主要是英语)的程序设计语言,在一定程度上与具体机器无关,其易学、易用、易维护,克服了汇编语言的缺点,提高了编程和维护效率。高级语言的语法规则极其严格,主要表现在它对于语法中的符号、格式等都有专门的规定。主要原因是高级语言的处理系统是计算机,计算机没有人类的智能,它所具有的能力是由人所预先赋予的,它本身不能自动适应变化不定的情况。(www.chuimin.cn)

由汇编语言或高级语言编写的程序称为“源程序”,存储源程序的文件称为“源文件”,它们不能被CPU直接识别和处理,需要经过翻译,转换成机器语言后才可以执行。用汇编语言编写的源程序要经过汇编语言编译器翻译成机器语言之后才可以运行。用高级语言编写的源程序的翻译有编译和解释两种方式,分别由编译程序和解释程序完成。编译程序对源程序进行扫描处理,根据已知的规则,判断源程序是否存在语法等方面的错误,最终将其转换成为目标程序,再由链接程序将若干个目标程序块及库文件链接成为可执行文件,这种方式提高了程序的开发效率。解释程序则按照源程序中语句的顺序逐条翻译并执行语句,边解释边执行,不生成目标程序。解释程序就好比“口译”,编译程序就好比“笔译”,比起编译方式,解释方式的运行效率较低。

除了按语言级别分外,程序设计语言还可以按照用户的要求分为过程式语言和非过程式语言。过程式语言的主要特征是,用户可以指明一列可顺序执行的运算以表示相应的计算过程,如FORTRAN、COBOL、Pascal、C等。非过程式语言的含义是相对的,凡是用户无法指明表示计算过程的一列可顺序执行的运算的语言都是非过程式语言,如SQL(数据库标准语言)等。

按照应用范围,程序设计语言有通用语言与专用语言之分。如FORTRAN、COLBAL、Pascal、C等都是通用语言。目标单一的语言称为专用语言,如APT等。

按照使用方式,程序设计语言有交互式语言和非交互式语言之分。具有反映人机交互作用的语言称为交互式语言,如BASIC等。不具有反映人机交互作用的语言称为非交互式语言,如FORTRAN、COBOL、ALGOL69、Pascal、C等。