CPU 结构、Flynn 分类法、CISC/RISC都是软考中较为常见的知识点,需要了解每种类型的特征、它们之间的区别。
一、CPU结构
数学家 冯·诺依曼
认为,计算机应当分为以下五个部分:
- 运算器:完成程序的各种算数、逻辑运算。
- 控制器:控制程序指令的执行,并将运行结果放到存储器。
- 存储器:用于持久化程序计算后的二进制数据。
- 输入设备:用于将数据输入到计算机。
- 输出设备:用于将计算机处理结果渲染展示给用户。
简单来讲,如下图所示。
主机包括了 CPU
和 存储器
。
而 CPU
包括了 运算器
和 控制器
。
运算器
和 控制器
内部的构成组件,是软考中经常考到的,所以要进行总结归纳。
只要和指令相关的,都属于控制器;其他寄存器都在运算器。
运算器包括了:
- 算数逻辑单元 ALU:用来做算数(加减乘除)、逻辑(或且非)运算。
- 累加寄存器 AC:用于存放
算数逻辑单元ALU
的临时计算结果,用于加减移位临时数据的保存。 - 数据缓冲寄存器 DR:和内存进行 IO 交互时,用到的缓存器件。
- 状态条件寄存器 PSW:用于保存计算时的状态标记,如
进位(C)
、溢出(V)
、中断(I)
等。
而控制器包括了:
- 程序计数器 PC:用于取指令,以便于控制器加以执行。
- 指令寄存器 IR:用于暂存正在执行的指令。
- 指令译码器:指令执行前的分析工作,分析指令的操作码。
- 时序部件:控制时钟产生的周期信号,用于各部件的时间同步。
二、Flynn —— 计算机体系结构的分类方法
2.1 单指令流单数据流(SISD)
- 控制器:
1
个。 - 处理器:
1
个。 - 主存储器:
1
个。
典例:单处理器系统。
2.2 单指令流多数据流(SIMD)
- 控制器:
1
个。 - 处理器:
N
个。 - 主存储器:
N
个。
典例:并行处理机、阵列处理机、超级向量处理机。
支持各处理器异步执行同一条指令。
2.3 多指令流单数据流(MISD)
- 控制器:
N
个。 - 处理器:
1
个。 - 主存储器:
N
个。
只是理论上存在,不切实际。
2.4 多指令流多数据流(MIMD)
- 控制器:
N
个。 - 处理器:
N
个。 - 主存储器:
N
个。
最常见,多处理机系统,能够实现并行作业。
三、指令系统类型 CISC、RISC
CISC(复杂指令集)
全名 复杂指令系统计算机
,Complex InstrucTIon Set Computer。
指令数量多,支持的寻址方式多,研制周期长,比较复杂,不常用。
RISC(精简指令集)
全名 精简指令集计算机
,Reduced InstrucTIon Set Computer。
指令数量少,引入了寄存器,频率为定长格式,支持的寻址方式少,研制周期短,比较简单,支持高级编程语言,使用场景广。
计算机的指令集越大,处理器就会越复杂,执行指令也会更慢,所以在现在日常使用的电脑中,都是用了 RISC
。