计算机系统层次结构¶
计算机系统的组成¶
计算机硬件¶
冯诺依曼机基本思想¶
-
计算机由五大部件组成: 运算器、控制器、存储器、输入设备、输出设备
-
指令和数据以同等地位存放在存储器中,并可按地址寻访
-
指令和数据都用二进制表示
-
指令由操作码和地址码组成
-
存储程序并按地址顺序执行
-
以运算器为中心(现代计算机以存储器为中心)
Note
冯诺依曼结构计算机中数据采用二进制编码表示,主要原因有:
-
二进制的运算规则简单
-
制造两个稳态的物理器件比较容易
-
便于用逻辑门电路实现算术运算(逻辑运算/真值运算)
计算机的功能部件¶
主存储器¶
主存储器的组成¶
-
存储体: 数据在存储体中按地址存储
-
MAR(存储地址寄存器): MAR位数反映存储单元个数,即地址范围
-
MDR(存储数据寄存器): MDR位数反映存储字长,即每次存取的数据位数
相关概念¶
-
存储元: 即存储二进制的电子元件,每个存储元可存储 \(1 bit\)
-
存储单元: 每个存储单元存放一串二进制代码,由若干个存储元组成
-
存储字: 存储单元中二进制代码的组合
-
存储字长: 存储单元中二进制代码的位数
-
在同一个存储器中,每个存储单元的宽度,即存储字长是固定的
-
\(1 Byte = 8 bit\)
运算器¶
运算器的组成¶
-
ACC(累加器)
-
MQ(乘商寄存器)
-
X(通用操作数寄存器)
-
ALU(算术逻辑单元)
相关概念¶
各个部件运算过程中存储的数据¶
| \(+\) | \(-\) | \(\times\) | \(\div\) | |
|---|---|---|---|---|
| ACC | 被加数、和 | 被减数、差 | 乘积高位 | 被除数、商 |
| MQ | - | - | 乘数、乘积低位 | 商 |
| X | 加数 | 减数 | 被乘数 | 除数 |
乘积高位与乘积低位
在计算机组成原理的二进制乘法运算中,为了处理 \(n\) 位数相乘得到 \(2n\) 位积的情况,通常将结果分为乘积高位和乘积低位存储。高位由累加器(ACC)存放,低位由乘商寄存器(MQ)存放,并在相乘过程中配合右移操作完成计算1。例如,当十进制运算 \(0.1 \times 0.1 = 0.01\) 积为两位小数,这时ACC和MQ就需要各存一位。
控制器¶
控制器的组成¶
-
CU(控制单元): 分析指令
-
IR(指令寄存器): 存放当前执行的指令
-
PC(程序计数器): 存放下一条指令的地址,有自增功能
Tip
- CPU = 运算器 + 控制器 (+ 若干寄存器)
计算机软件¶
系统软件和应用软件¶
三个级别的语言¶
软件和硬件的逻辑功能等价性¶
计算机系统的层次结构¶
-
虚拟机器 \(M_4\) (高级语言机器)
-
虚拟机器 \(M_3\)(汇编语言机器)
-
虚拟机器 \(M_2\)(操作系统机器)
-
传统机器 \(M_1\)(机器指令系统)
-
微程序机器 \(M_0\)(微指令系统)
计算机系统的工作原理¶
"存储程序"工作方式¶
从源程序到可执行文件¶
指令执行过程的描述¶
初始时指令和数据存入主存,PC指向第一条指令,从主存中取出指令放入IR中,PC自动加1,指向下一条指令,CU分析指令并发出控制信号控制其他部件来执行指令。