[toc]
cpu包含两类东西:
- 控制器。
- 运算器ALU
详解:
1. 控制器#
控制器主要负责
- 取指令
- 分析指令(译码)
- 执行指令
包含的东西有
- 程序计数器PC
- 指令寄存器IR
- 指令译码器
- 地址寄存器MAR
- 数据寄存器MDR
- 时序系统,分频,时序信号
- 微操作信号发生器CU
- 中断标记寄存器
2.运算器#
包含
- ALU算术逻辑单元(底层是数电的那种门电路实现)
- 暂存寄存器——只负责暂存读出来的数据,不存中间结果
- 累加寄存器——暂存ALU的“运算”结果
- 通用寄存器组—— 存放操作数和地址信息等。
- 程序状态字寄存器PSW——存放当前指令执行结果的各种状态信息,如有无进位(CY位),有无溢出(OV位),结果正负(SF位),结果是否为零(ZF位),奇偶标志位(P位)
- 移位器
- 计数器——控制乘除时的操作步数
指令周期#
CPU指令周期分为 取指、间指、执行、中断四个周期。
- 取指:
PC->MAR->主存->MDR->IR->CU控制PC+1
简单来说
PC把指令地址存入MAR地址寄存器
主存取出指令数据,放到MDR
MDR把指令转到IR里存着
CU控制PC+1
- 间指
IR->MDR->MAR->存储器->MDR
要寻找指令执行数据的地址
IR解析地址数据,放到MDR中
MDR把地址放到MAR中,让他进行读操作
主存中读出的数据放入MDR中
- 中断
PC->MDR->主存 原地址存入主存
CU->PC更新中断地址