高级语言和低级语言的区别

来源:百度知道 编辑:UC知道 时间:2024/05/08 09:58:01
最好举例说明(程序的实现)

首先,低级语言是指机器语言和汇编语言,高级语言是诸如Basic,C,Pascal,Delphi之类的语言
低级语言编写很麻烦,比如,机器语言全部是二进制代码,在汇编语言和高级语言没出现的时候,程序员们就这样编写,现在已经没人这样编程了.汇编语言实现了靠近人类语言的任务,但仍然不很容易
下边以a=a+b为例

机器:
(一大串1和0,不再给出,因为的确很麻烦)

汇编:(a取2,b取3)
MOV AX,2
MOV BX,3
ADD AX,BX

C语言:
int a,b;
a=2;
b=3;
a=a+b;

BASIC语言:
dim a,b as integer
a=2
b=3
a=a+b

PASCAL语言:
int a,b;
a:=2;
b:=3;
a:=a+b;

最初的计算机程序都是用0和1的序列表示的,程序员直接使用的是机器指令,无需翻译,从纸带打孔输入即可执行得到结果。后来为了方便记忆,就将用0、1序列表示的机器指令都用符号助记,这些与机器指令一一对应的助记符就成了汇编指令,从而诞生了汇编语言。无论是机器指令还是汇编指令都是面向机器的,统称为低级语言。因为是针对特定机器的机器指令的助记符,所以汇编语言是无法独立于机器(特定的CPU体系结构)的。但汇编语言也是要经过翻译成机器指令才能执行的,所以也有将运行在一种机器上的汇编语言翻译成运行在另一种机器上的机器指令的方法,那就是交叉汇编技术。

高级语言是从人类的逻辑思维角度出发的计算机语言,抽象程度大大提高,需要经过编译成特定机器上的目标代码才能执行,一条高级语言的语句往往需要若干条机器指令来完成。高级语言独立于机器的特性是靠编译器为不同机器生成不同的目标代码(或机器指令)来实现的。那具体的说,要将高级语言编译到什么程度呢,这又跟编译的技术有关了,既可以编译成直接可执行的目标代码,也可以编译成一种中间表示,然后拿到不同的机器和系统上去执行,这种情况通常又需要支撑环境,比如解释器或虚拟机的支持,Java