(1)数据缓冲寄存器(DR)         数据缓冲寄存器用来暂时存放算术逻辑运算单元(ALU)运算结果,或由数据存绪器读出的一个数据字,或来自外部接口的一个数据字,缓冲寄存器的作用是:

① 作为ALU 运算结果和通用寄存器之间信息传送中时间上的缓冲;

② 补偿 CPU 和内存、外围设备之间在操作速度上的差别。

(2)指令寄存器(IR)        指令寄存器用来保存当前正在执行的一条指令。当执行一条指令时,先把它从指令存储器(简称指存)读出,然后再传送至指令寄存器。指令划分为操作码和地址码字段,由二进制数字组成。为了执行任何给定的指令,必须对操作码进行测试,以便识别所要求的操作。一个叫做指令译码器的部件就是做这项工作的。指令寄存器中操作码字段OP 的输出就是指令译码器的输入。操作码一经译码后,即可向操作控制器发出具体操作的特定信号。

(3) 程序计数器(PC)            ①暂存当前地址②为了保证程序能够连续地执行下去,CPU 必须具有某些手段来确定下一条指令的地址。而程序计数器(PC)正是起到这种作用,所以它又称为指令计数器。在程序开始执行前,必须将它的起始地址,即程序的第一条指令所在的指存单元地址送入 PC。因此 PC 的内容即是从指存提取的第一条指令的地址。当执行指令时,CPU 将自动修改PC 的内容,以便使其保持的总是将要执行的下一条指令的地址。由于大多数指令都是按顺序来执行的,所以修改的过程通常只是简单的对PC加1。

但是,当遇到转移指令如 JMP 指令时,那么后继指令的地址(即 PC 的内容)必须从指令寄存器中的地址字段取得。在这种情况下,下一条从指存取出的指令将由转移指令来规定,而不是像通常一样按顺序来取得。因此程序计数器的结构应当是具有寄存器和计数两种功能的结构。

(4)数据地址寄存器(AR)       数据地址寄存器用来保存当前 CPU所访问的数据存储器(简称数存)单元的地址。由于要对存储器阵列进行地址译码,所以必须使用地址寄存器来保持地址信息,直到一次读/写操作完成。

地址寄存器的结构和数据缓冲寄存器、指令寄存器一样,通常使用单纯的寄存器结构。信息的存入一般采用电位-脉冲方式,即电位输入端对应数据信息位,脉冲输入端对应控制信号,在控制信号作用下,瞬时将信息打入寄存器。

(5)通用寄存器     在我们的模型中,通用寄存器有4个(R0~R3),其功能是:当算术逻辑单元(ALU)执行算术或逻辑运算时,为ALU提供一个工作区。

目前 CPU 中的通用寄存器,可多达 64个,甚至更多。其中任何一个可存放源操作也可存放结果操作数。在这种情况下,需要在指令格式中对寄存器号加以编址。从硬件构来讲,需要使用通用寄存器堆结构,以便选择输入信息源。通用寄存器还用作地址指器、变址寄存器、堆栈指示器等。

(6)程序状态字寄存器(PSWR)       程序状态字寄存器又称为状态条件寄存器,保存由算术运算指令和逻辑运算指令运算或测试结果建立的各种条件代码。

除此之外,状态条件寄存器还保存中断和系统工作状态等信息,以便使 CPU和系统能及时了解机器运行状态和程序运行状态。因此,状态条件寄存器是一个由各种状态条件标志拼凑而成的寄存器。

【CPU中的主要寄存器】相关推荐

  1. CPU中的主要寄存器:有六类寄存器:指令寄存器(IR)、程序计数器(PC)、地址寄存器(AR)、数据寄存器(DR)、累加寄存器(AC)、程序状态字寄存器(PSW)

    在CPU中至少要有六类寄存器:指令寄存器(IR).程序计数器(PC).地址寄存器(AR).数据寄存器(DR).累加寄存器(AC).程序状态字寄存器(PSW).这些寄存器用来暂存一个计算机字,其数目可以 ...

  2. CPU中的主要寄存器

    在CPU中至少要有六类寄存器:指令寄存器(IR).程序计数器(PC).地址寄存器(AR).数据寄存器(DR).累加寄存器(AC).程序状态字寄存器(PSW).这些寄存器用来暂存一个计算机字,其数目可以 ...

  3. CPU中寄存器作用及说明

    各种计算机的CPU可能不同,但是在CPU中至少至少要有六类寄存器:①指令寄存器(IR):②程序计数器(PC):③数据地址寄存器(AR):④缓冲寄存器(DR):⑤通用寄存器(R0~R3);⑥状态字寄存器 ...

  4. vivado的vio怎么使用_使用VIVADO中VIO模拟CPU接口进行在线寄存器读写调试(附源代码)...

    debug,尤其是通信芯片的debug,可以有很多的方法.一个数据帧从进入到输出,可以在通路上的关键节点处设置监测如各种计数器等,可通过VIO(xilinx)定时上报实时状态.可以把VIO的各个信号线 ...

  5. CPU所含有的寄存器

    32位CPU所含有的寄存器有:4个数据寄存器(EAX.EBX.ECX和EDX) 2个变址和指针寄存器(ESI和EDI) 2个指针寄存器(ESP和EBP) 6个段寄存器(ES.CS.SS.DS.FS和G ...

  6. 函数调用关系图如何画_程序是如何在 CPU 中运行的(二)

    笔者能力有限,如果文中出现错误的地方,还请各位朋友能够给我指出来,我将不胜感激,谢谢~ 前言 在上一篇文章中<程序是如何在 CPU 中运行的(一)>笔者讲述了程序中一条一条指令以及一条一条 ...

  7. CPU,内核,寄存器,缓存,RAM,ROM的知识

    偷偷说一下,这个图片是晚上 8 点钟的太阳,一个骚男华为总工发给我的,有时间还是想出去走走 很多人使用计算机,但是对计算机却不是很懂,即使是作为非常资深的码农,也不能做到心中有剑的地步,那么怎么办?剑 ...

  8. CPU中的通用寄存器

    CPU内部有若干个通用寄存器,它们除了具有与自己名字含义相对应的专用功能外,还具有通用功能,比如传递数据,暂存数据,参与计算等.因此为CPU中的寄存器取名为通用寄存器.16位CPU有14个通用寄存器, ...

  9. 计算机指令中数据寻址的方式,1.变址寻址需要在指令中提供一个寄存器编号和一个数值。 2.计算机的指令越多,功能越强越好。 3.程序计数...

    满意答案 happysk72 推荐于 2017.12.16 采纳率:57%    等级:12 已帮助:21199人 1.对 变址寻址就是将寄存器(该寄存器一般称作基址寄存器)的内容与指令中给出的地址偏 ...

最新文章

  1. ISME:土壤微生物对硫的短期及长期利用的决定因素-基于13C,15N,14C和35S多同位素标记结果...
  2. 读 博 失 败 的 10 大 作 死 方 法
  3. 华为-yolo系列详解
  4. PySpark安装和测试
  5. 进程同步与互斥的区别
  6. 【Android XMPP】 学习资料收集贴(持续更新)
  7. aspx使用存储过程分页
  8. L4Linux的版本比较
  9. ubuntu安装lxde_如何在Ubuntu上安装轻量级LXDE桌面
  10. 论文阅读三:基于改进人工蜂群算法的SDN负载均衡策略研究
  11. ABAP 企业微信ASE 加密算法
  12. 博客已死?移动互联网时代博客的价值
  13. python七段数码管绘制实验报告_Python绘制七段数码管实例代码
  14. 浙大 | PTA 习题9-5 通讯录排序 (20分)
  15. xp系统打印机没有服务器属性设置,xp系统打印机纸张设置的方法
  16. Mars3D中无人机航拍的数据想叠加到三维地图上,实现的流程和方法
  17. 为什么不能在BroadcastReceiver中开启子线程
  18. 论文页眉设置 奇偶页页眉均为章序及章标题 论文按章节设置页眉
  19. oracle中distinct和count函数组合使用
  20. Python cv2.minMaxLoc方法代码示例

热门文章

  1. 智能微模块一体化机柜
  2. 关于线性回归和逻辑回归一些深入的思考
  3. atoi(s)函数用法 1
  4. 中台不同于平台,那么到底啥是中台?
  5. python有道字典_有道词典python版
  6. 重新渲染echarts图形
  7. mysql数据备份及完全卸载
  8. 【C语言】猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。
  9. VScode 一些快捷操作 删除空行
  10. router vue 页签文字_vueRouter点击打开新页签