计算机系统层次结构

来源:互联网 发布:全球人工智能金融峰会 编辑:程序博客网 时间:2024/05/24 07:16

我们从计算机语言角度出发,把计算机系统划分成多级层次结构,每一层以一种语言为特征,如图所示:

L1:微程序机器级

 这一级的机器语言是微指令集,使用者是计算机硬件的设计人员,编写的微程序可以直接由计算机硬件/固件解释来实现

L2:传统机器级

这一级的机器语言就是传统的机器指令集。程序员用该指令集编写的程序由L1级以上的微程序进行解释执行。由微程序解释指令集又叫做仿真。实际上,在L1上可以有多个能够在它上面运行的解释程序,每个解释程序定义了一种指令集。有的机器没有采用微程序技术,也就没有微程序机器级。这时,L2的指令集是由硬联逻辑直接解释执行的。显然硬联逻辑速度更快。精简指令级处理器就是采用这种实现方法。

L3:操作系统虚拟机

虚拟机的机器语言实现由L1和L2两部分构成。L1用于实现对操作系统的功能的调用,例如打开/关闭文件,读写文件等。这一级语言编写的程序是由L3:和L2共同执行的,其中只有操作系统级指令是由OS连进行解释执行的。

L4汇编语言虚拟机

用汇编语言编写的程序,先翻译成L3和L2级语言,然后再由相应的机器执行。

L5高级语言虚拟机

用高级语言编写的程序一般由编译器翻译到L4或L3上,个别的高级语言也用解释方法实现,例如BASIC语言

L6应用语言虚拟机

这一级语言就是为满足某种用途设计的,所以这一级语言就是面向具体问题设计的应用语言。这一级语言一般由应用程序翻译成L5级以上


可以看出以上L1~L3级用解释的方法实现,而L4~L6 由翻译的方法实现。

解释和实现是语言实现的两种基础技术

共同点:都是以执行一串L级指令来实现一条L+1级指令

不同点:翻译技术是把全部L+1级程序转换成L级程序,在执行新产生的L级程序,执行过程不在访问L+1级;就像翻译官翻译了全部以后人们才能听懂

解释技术是每条L+1级指令被译码后,就执行一串等效的L级指令,然后再去取下一条L+1级指令,依次重复进行。就像注释一样,解释一条

显然逐条解释执行的时间会更长,但是它占用的存储空间较少。

0 0
原创粉丝点击