关于寄存器
关于八大寄存器(其中两个可以有多个)
1、通用寄存器(有编号,可有多个)
特点:逻辑简单,统一
作用:提供操作数,地址码,存放运算结果等多种功能
应用:现多采用大规模集成电路RAM构成寄存器组,有单双口之分,单口每次只能访问一个寄存器,而双口每次可访问两个,满足了双操作数指令的快速运算
2、暂存器(无编号,故只能在CPU内部使用,可有多个)
作用:暂存中间信息,能覆盖通用寄存器的内容
例:要想将某个主存单元的内容送往另一个主存单元,首先需从主存读取源数据并暂存起来
3、指令寄存器(单核单线程CPU一个)
作用:用来存放当前正在执行的指令
应用:大多数计算机将指令寄存器扩产为指令队列(指令栈)允许预取若干条指令
4、程序计数器(PC)也叫指令计数器或指令指针
作用:指示指令在存储器中的存放位置
工作:顺序执行时,每从主存读一条指令,PC内容增量计数,指向下一条指令地址
5、程序状态字寄存器(PSW,操作系统专用)
作用:记录现行程序的运行状态和指示程序的工作方式
组成:CPU参与①特征位:反映当前程序的执行状态
②编程设定位:决定程序调试,中断响应,程序工作方式等
6、地址寄存器(MAR)
作用:存放目标单元地址
工作:CPU将PC内容→MAR→主存→译码
对于某些RISC型处理器,常用暂存器代替MAR)
7、数据缓冲寄存器(MBR)
作用:存放CPU与主存之间交换的数据
工作:CPU写入主存的数据→MBR→主存相应单
MBR,MAR使得主存与CPU之间传输单一,容易控制,这两个寄存器不能直接编程访问,用户看得见数据传输却看不见具体实现过程
8、堆栈指针寄存器(SP)
作用:保存堆栈的栈顶单元地址