标签
日期
Place
创建时间
Jan 8, 2026 01:52 PM
CPU的功能
总的功能:
- 指令控制:完成取指令、分析指令和执行指令的操作,具有控制程序顺序执行的功能
- 操作控制:产生完成每条指令所需的控制命令,一条指令的功能往往是由若干个操作信号的组合来实现的,CPU管理并产生由内存取的每条指令的操作信号,把各种操作信号送往相应的部件,从而控制这些部件按指令的要求进行动作
- 时间控制:对各种操作加以时间上的控制,时间控制要为每条指令按时间顺序提供应有的控制信号
- 数据加工:对数据进行算术和逻辑运算
- 中断处理:对计算机运行过程中出现的异常情况和特殊请求进行处理
从CPU的核心部件分别出发
- 控制器
- 负责协调和控制计算机各部件执行程序的指令序列,其基本功能是取指令、分析指令和执行指令
- 取指令:控制器必须具备自动地从存储器中取出指令的功能,要求其能够自动形成指令的地址(PC+"1"),并能发出取指令的命令,将对应此地址的指令取到控制器
- 分析指令:
- 操作码译码,分析此指令要完成什么操作,控制器要发出什么操作命令
- 分析参与这次操作的操作数地址,操作数的有效地址--数据寻址方式不同
- 执行指令:根据分析指令产生的“操作命令”和“操作数地址”的要求形成操作控制信号序列(不同的指令有不同的操作控制信号序列),通过对运算器、存储器以及I/O设备的操作执行每条指令
- 控制程序的输入和运算结构的输出(控制主机与I/O设备交换信息)
- 对总线管理
- 中断处理:处理机器运行过程中出现的异常情况(如掉电)和特殊请求(如打印机请求打印一行字符)
- 运算器
- 对数据进行加工,实现算术和逻辑运算
CPU结构框图
运算器的基本结构
专用数据通路方式
算术逻辑单元:主要功能进行算术/逻辑运算

通用寄存器组:用于存放操作数和各种地址信息等
CPU内部单总线方式
将所有寄存器的输入端和输出端都连接到一条公共的通路上
运算器内容还需额外提供暂存寄存器:用于暂存从主存/某个寄存器读来的数据,这个数据不能存放在通用寄存器中,否则会破坏原有内容

控制器的基本结构

CPU的结构
总结
根据CPU的功能进行分析:
- PC、IR、指令译码部件:
- 指令控制
- CU+时序电路:
- 操作控制
- 时间控制
- ALU+寄存器:
- 数据加工
- 中断系统:
- 处理中断 CPU由四大部分组成:ALU、寄存器、中断系统、CU




CPU的寄存器
- 用户可见寄存器
- 用户可对这类寄存器进行编程,以及通过优化使CPU因使用这类寄存器而减少对于主存的访问次数
- 通用寄存器
- 通用寄存器可由程序设计者指定许多功能
- 存放操作数(或操作数的地址)
- 可作某种寻址方式所需的专用寄存器
- 基址寄存器
- 变址寄存器
- 堆栈寻址所需的栈指针SP
- 数据寄存器
- 存放操作数,其位数应满足多数数据类型的数值范围
- 有些机器允许使用两个连续的寄存器存放双倍字长的值
- 有些机器的数据寄存器只能用于保存数据,不能用于操作数地址的计算
- 地址寄存器
- 存放地址,地址寄存器的位数必须够长,以满足最大的地址范围
- 用于特殊的寻址方式,例如基址寻址的段基址(存放基地址)、用于变址寻址的变址寄存器、用于堆栈寻址的栈指针
- 条件码寄存器
- 存放条件码
- 控制和状态寄存器
- 用户不可对这类寄存器编程,它们被控制部件使用,以控制CPU的操作,也可被带有特权的操作系统程序使用,从而控制程序的执行
- 控制寄存器
- MAR、MDR、IR 用户不可见
- MAR:存储器地址寄存器,用于存放将被访问的存储单元的地址
- MDR:存储器数据寄存器,用于存放欲存入存储器中的数据或最近从存储器中读出的数据
- IR:指令寄存器,存放当前欲执行的指令
- PC 用户可见
- 程序计数器,存放现行指令的地址,通常具有计数功能,当遇到转移类指令,,PC的值可被修改
- 通过以上4个寄存器,CPU和主存可交换信息
- PC->MAR->M->MDR->IR
- 状态寄存器
- 程序状态字寄存器(PSW寄存器)
- 存放条件码和其他状态信息
- 中断标记寄存器



