首页 理论教育计算机语言的发展-C语言程序设计第2版

计算机语言的发展-C语言程序设计第2版

【摘要】:机器语言由0和1两个字符组成,称为二进制数。指令是计算机语言的最小组成单元,机器语言就是机器指令的集合。对人而言,不管是机器语言还是汇编语言,可读性都差,一般的人也难以理解,不利于计算机语言的推广普及。当然,计算机不能直接识别用高级语言编写的源程序,需要通过编译器将其翻译成机器语言产生目标程序,才能被计算机执行。

第一代计算机语言,即机器语言。计算机语言是人和计算机交流的工具,是人用来控制计算机的手段。1946年,计算机语言随着计算机的诞生而诞生。在早期的计算机语言中,通过电路中反映的两种物理状态(脉冲有无、电位高低或磁性正负)正好可以表示“0”和“1”(如用低电平表示“0”和用高电平表示“1”),这就形成了第一代计算机所使用的语言,即机器语言。机器语言由0和1两个字符组成,称为二进制数。

要使计算机执行某项任务,人们就得写一串由0和1组成的指令序列交给计算机执行。指令是计算机语言的最小组成单元,机器语言就是机器指令的集合。这种只有0和1组成的语言对绝大多数人来说都像天书一般难以理解。

第二代计算机语言,即汇编语言。对人而言,机器语言的可读性实在太低,人们便在机器语言的基础上作了一定的改进,采用一些简洁的字母、符号串来替代一个特定的指令的二进制串,比如LOCK代表总线封锁指令、ADD代表加法指令等。以这种符号形式呈现的语言称为汇编语言。由于计算机只能识别0和1两个字符,因此,汇编语言需要被汇编程序进行汇编之后,才能交由计算机执行。虽然汇编语言用起来容易出错,可移植性也差,但为计算机语言向更高级语言发展奠定了基础。

第三代计算机语言,即高级语言。对人而言,不管是机器语言还是汇编语言,可读性都差,一般的人也难以理解,不利于计算机语言的推广普及。与此同时,人们对程序的可移植 性需求也在不断增强,因此高级语言应运而生。高级语言基本是按人们的语言习惯和逻辑思维,且计算机也能接受的语意进行设计。高级语言采用英文单词、数字和一些特殊符号等编写,可读性、通用性、可移植性强。

高级语言的发展从最初的结构化语言,发展成为面向过程设计语言和面向对象设计语言。面向过程设计语言的代表有C,Fortran,Cobol,Pascal等;面向对象设计语言的代表则为VB,Java,C++,C#等。(www.chuimin.cn)

当然,计算机不能直接识别用高级语言编写的源程序,需要通过编译器将其翻译成机器语言产生目标程序,才能被计算机执行。任何一种高级语言设计程序都有一个与之对应的编译器来完成对源程序的翻译。

编译器通常有两种方式:一种叫“编译程序”,一种叫“解释程序”。编译程序:是指事先编好一个称为编译程序的机器语言程序,作为系统软件存放在计算机内,当用户用高级语言编写的源程序输入计算机后,编译程序便把源程序整个地翻译成用机器语言表示的与之等价的目标程序,然后再交由计算机执行该目标程序。解释程序是当源程序进入计算机时,解释程序采用边扫描边解释,逐句输入逐句翻译的方式,计算机一句句执行,但是并不产生目标程序。

注意:编译程序能产生目标程序(即机器语言),能被计算机执行。解释程序不产生目标程序,不能被计算机执行。