计算机系统的层次结构
计算机系统的组成
硬件系统 + 软件系统。
计算机硬件
冯诺依曼计算机的特点
- 采用"存储程序"的工作方式
- 计算机硬件系统由运算器、存储器、控制器、输入设备、输出设备5大部件组成。
- 指令和数据以同等地位存储在存储器中,形式上没有区别,但计算机应能区分它们。
- 指令和数据均用二进制代码表示。指令由操作码和地址码组成,操作码指出操作的类型,地址码指出操作数的地址。
"存储程序"的基本思想是:将事先编制好的程序和原始数据送入主存后才能执行,一旦程序被启动执行,就无须操作人员的干预,计算机会自动逐条执行指令,直至程序执行结束。
计算机软件
软件按其功能,可分为系统软件和应用软件。
三个级别的语言:机器语言、汇编语言、高级语言。
把进行这3个级别语言转换的软件系统称为翻译程序,有3类:
- 汇编程序(汇编器)。将汇编语言程序翻译成机器语言程序。
- 解释程序(解释器)。将源程序中的语句按执行顺序逐条翻译成机器指令并立即执行。
- 编译程序(编译器)。将高级语言程序翻译成汇编语言或机器语言程序。
软件和硬件的逻辑功能等价性
对某一功能来说,既可以由硬件实现,又可以由软件实现,从用户的角度来看,它们在功能上是等价的。这一等价性被称为软、硬件逻辑功能的等价性。
软件和硬件逻辑功能的等价性是计算机系统设计的重要依据,软件和硬件的功能分配及其界面的确定是计算机系统结构研究的重要内容。
计算机系统的层次结构
关于计算机系统层次结构的分层方式,目前尚无统一的标准。其中一种层次结构如下:
- 第1级是微程序机器层,这是一个实在的硬件层,它由机器硬件直接执行微指令。
- 第2级是传统机器语言层,它也是一个实际的机器层,由为微程序解释机器指令系统。
- 第3级是操作系统层,它由操作系统程序实现。操作系统程序是由机器指令和广义指令组成的,这些广义指令是为了扩展机器功能而设置的,是由操作系统定义和解释的软件指令,所以这一层也称为混合层。
- 第4级是汇编语言层,它为用户提供一种符号化的语言,借此可编写汇编语言源程序。
- 第5级是高级语言层,它是面向用户的,是为方便用户编写应用程序而设置的。
没有配备软件的纯硬件系统称为裸机。第3层~第5层称为虚拟机。
软件和硬件之间的界面就是指令集体系结构(ISA)。ISA定义了一台计算机可以执行的所有指令的集合,每条指令规定了计算机执行什么操作,以及所处理的操作数存放的地址空间和操作数类型。 ISA是指软件能感知到的部分,也称为软件可见部分。