计算机系统结构
CPU
CPU(central processing unit)中央处理器
组成:
- 算术/逻辑单元(对数据进行运算)
- 控制单元(系统机器活动)
- 寄存器(CPU内部信息的临时存储)
CPU和RAM之间以总线相连,用以传递数据。
程序存储
程序必须加载到内存中才能执行。
程序可以和数据一样进行编码并存储到主存储器(RAM,也可以称为内存)中。
控制单元可以从存储器中读取程序,将指令解码并执行。
在程序的结尾有一个程序结束标志符,用来与数据进行分离。
将程序和数据以相同形式(都是由0和1组成的串)存入存储器,可以使得一个程序可以操纵其他程序(甚至是自己),就像它可以操作数据一样。
机器语言
为了对存储的程序进行解码和执行,CPU被设计成可以识别位模式编码的指令。
这组指令及编码系统统称为机器语言。
指令系统
精简指令集计算机:CPU需要执行的最小的机器指令集
复杂指令集计算机:拥有强大的丰富指令集
机器指令分为3类:
- 数据传输类
- 算术/逻辑类
- 控制类
机器指令编码包括:
- 操作码
- 操作数
- 指定寄存器
- 数据的存储单元地址
程序执行
CPU内部有两个专用寄存器:
- 指令寄存器(存储正在执行的指令)
- 程序计数器(存储下一个待执行的指令的地址)
一个机器周期包括:
- 取指(CPU根据程序计数器指定的地址请求得到指令(位模式),并放在指令寄存器中。程序计数器的值改变)
- 译码(对指令寄存器中的指令(位模式)进行译码)
- 执行(实现指令寄存器里指令所规定的动作)
执行顺序:与指令存储存储器中的顺序相对应,除非被JUMP等(会改变执行顺序的指令)更改。
多个程序可以同时存储在一个计算机的主存储器中,只要他们的地址不同。
机器开启时运行哪个程序可以通过适当地设置程序计数器来决定。
流水线
允许在一个机器周期内各个步骤重叠进行。
在任何一个时刻可以由不止一条指令在‘流水线’上,每条指令处在不同的处理阶段。
目的:增加计算机的吞吐量(在给定时间内可以完成的工作总量)
多核CPU
在同一芯片上存在两个及以上CPU以及共用的高速缓冲存储器。
多处理器
将若干处理单元(每一个都像单处理器中的CPU)都连接到同一个主存储器上。各处理器可以独立工作,并通过把相关的信息放在公共存储单元来协调各自的工作。