中央处理器CPU
1 CPU的功能和结构
控制器的功能
(1)取指令
(2)分析指令
(3)执行指令,发出各种操作命令
(4)控制程序输入及结果输出
(5)总线管理
(6)处理异常和特殊请求
运算器的功能
实现算术运算和逻辑运算
CPU结构框图
![](https://img-blog.csdnimg.cn/img_convert/100959ccf16178be7bc29707c6a6696f.jpeg)
CPU寄存器
(1)用户可见的寄存器
( a ) 存放操作数:可做某种寻址方式所需的专用寄存器
( b ) 数据寄存器:存放操作数(满足各种数据类型)。两个寄存器拼接可存放双字长的数据
( c ) 地址寄存器:存放地址,其位数应满足最大的地质范围。
( d ) 条件码寄存器:存放条件码,作为程序分支的依据。eg:正,负,0,溢出,进位
(2)控制和状态寄存器(用户不可见)
( a ) 控制寄存器:
PC -> MAR -> M -> MDR -> IR
控制CPU操作,其中除PC用户可见外,其他寄存器均不可见。
( b ) 状态寄存器:存放条件码和PSW寄存器
其中PSW寄存器即为程序状态寄存器,可以用来区分改程序处于用户态还是内核态。每个进程都有一个PSW状态字,1表示自身是内核态
2 指令执行过程
一. 三种周期
指令周期:
(1)指令从取指,分析指令,到执行完成的全过程所需的全部时间。
(2)有时指令周期还包括间指周期(间接寻址访问主存)和中断周期(响应中断)
(3)执行完指令后才能进入中断周期,响应中断
机器周期:
(1)通常把一个指令周期划分为若干个机器周期,每个机器周期完成一个基本操作
(2)不同的指令包含不同个数的机器周期
(3)因为指令的而全部过程有多个步骤,取耗时最长的那个步骤作为机器周期
时钟周期
(1)一个机器周期内,要完成若干个微操作,每个微操作要耗费1个节拍,一个节拍就是一个时钟周期
二. 指令周期的数据流
取指周期(分成以下几个微操作)
(1)这些微操作都在时钟控制下进行,每个微操作占用一个节拍
微操作 |
解释 |
(pc)-> MAR -> 地址线 |
PC寄存器中的指令地址打给MAR,MAR打给主存 |
1 -> R (读控制线置1) |
控制线置驻村为读信号,说明对该主存单元进行读操作 |
M(MAR)-> MDR |
把主存相应位置的数据打给MDR |
MDR -> IR |
把MDR中督导的指令打到IR指令寄存器 |
OP(IR) -> CU |
把指令中的操作码字段打给控制单元CU |
(PC)+ 1 -> PC |
PC寄存器中的值根据编址方式+n,表示下次取指的内存单元号 |
执行周期
(1)非访存指令
指令 |
作用 |
微操作 |