内存资料寄存器(Memory Data Register,MDR),又称数据寄存器、缓冲寄存器,是计算机控制单元中的寄存器,寄存了将要写入到计算机主存储器(例如:RAM)的数据,或由计算机主存储器读取后的数据。它就像缓冲器,持有从内存复制的数据,以准备给处理器使用。内存资料寄存器是微程序与计算机数据储存(computer data storage)之间的一个微小界面的其中一半,而另一半则是内存地址寄存器(memory address register)。

中文名

内存资料寄存器

外文名

Memory Data Register

领    域

计算机组成原理别    名

数据寄存器

有关术语

寄存器

作    用

数据缓冲

内存资料寄存器定义

编辑

语音

内存资料寄存器是指用于存放欲写入存储体中的数据,或暂存从存储体中读出的数据,准备让处理器处理的寄存器,即用来暂时存放处理器计算过程中所用到的操作数、结果和信息。数据寄存器用来暂时存放由主存储器读出的一条指令或一个数据字;反之,当向主存存入一条指令或一个数据字时,也将它们暂时存放在数据寄存器中。在单累加器结构的运算器中,数据寄存器还可兼作操作数寄存器[1]

。数据寄存器访问速度最快,完全能与 CPU 协调工作。

内存资料寄存器类别

编辑

语音

AX、BX、CX、DX可以称为数据寄存器,这4个16位寄存器又可分别分成高8位(AH、BH、CH、DH)和低8位(AL、BL、CL、DL)。因此它们既可作为4个16位数据寄存器使用,也可作为8个8位数据寄存器使用,在编程时可存放源操作数、目的操作数或运算结果。数据寄存器是存放操作数、运算结果和运算的中间结果,以减少访问存储器的次数,或者存放从存储器读取的数据以及写入存储器的数据的寄存器。

AX(accumulator)累加器。作为累加器使用。是算术运算的主要寄存器。在乘、除等指令中指定用来存放操作数。以及所有的 I/O指令都使用这一寄存器与外部设备传送信息。

BX(base)基址。可以作为通用寄存器使用。此外在计算机存储地址时,它经常用作基址寄存器。

CX(count)计数。可以作为通用寄存器使用。常用来保存计数值,如在循环、位移和串处理指令中作隐含计数器。

DX(data)数据。可以作为通用寄存器使用。一般在作双字长运算时把DX和AX组合在一起存放一个双字长数,DX用来存放高位数。对于某些I/O操作,DX可用来存放I/O的端口地址。

内存资料寄存器寄存器

编辑

语音

寄存器,是集成电路中非常重要的一种存储单元,通常由触发器组成。在集成电路设计中,寄存器可分为电路内部使用的寄存器和充当内外部接口的寄存器这两类。内部寄存器不能被外部电路或软件访问,只是为内部电路的实现存储功能或满足电路的时序要求。而接口寄存器可以同时被内部电路和外部电路或软件访问,CPU中的寄存器就是其中一种,作为软硬件的接口,为广泛的通用编程用户所熟知。CPU中至少要有六类寄存器:指令寄存器(IR)、程序计数器(PC)、地址寄存器(AR)、数据寄存器(DR)、累加寄存器(AC)、程序状态字寄存器(PSW)。这些寄存器用来暂存一个计算机字,其数目可以根据需要进行扩充。

指令寄存器

指令寄存器(Instruction Register,IR)用来保存当前正在执行的一条指令。当执行一条指令时,首先把该指令从主存读取到数据寄存器中,然后再传送至指令寄存器。

指令包括操作码和地址码两个字段,为了执行指令,必须对操作码进行测试,识别出所要求的操作,指令译码器(Instruction Decoder,ID)就是完成这项工作的。指令译码器对指令寄存器的操作码部分进行译码,以产生指令所要求操作的控制电位,并将其送到微操作控制线路上,在时序部件定时信号的作用下,产生具体的操作控制信号。指令寄存器中操作码字段的输出就是指令译码器的输入。操作码一经译码,即可向操作控制器发出具体操作的特定信号。

程序计数器

程序计数器(Program Counter,PC)用来指出下一条指令在主存储器中的地址。在程序执行之前,首先必须将程序的首地址,即程序第一条指令所在主存单元的地址送入PC,因此PC的内容即是从主存提取的第一条指令的地址。当执行指令时,CPU能自动递增PC的内容,使其始终保存将要执行的下一条指令的主存地址,为取下一条指令做好准备。若为单字长指令,则(PC)+1àPC,若为双字长指令,则(PC)+2àPC,以此类推。但是,当遇到转移指令时,下一条指令的地址将由转移指令的地址码字段来指定,而不是像通常的那样通过顺序递增PC的内容来取得。因此,程序计数器的结构应当是具有寄存信息和计数两种功能的结构。

地址寄存器

地址寄存器(Address Register,AR)用来保存CPU当前所访问的主存单元的地址。由于在主存和CPU之间存在操作速度上的差异,所以必须使用地址寄存器来暂时保存主存的地址信息,直到主存的存取操作完成为止。当CPU和主存进行信息交换,即CPU向主存存入数据/指令或者从主存读出数据/指令时,都要使用地址寄存器和数据寄存器。如果我们把外围设备与主存单元进行统一编址,那么,当CPU和外围设备交换信息时,我们同样要使用地址寄存器和数据寄存器。

累加寄存器

累加寄存器通常简称累加器(Accumulator,AC),是一个通用寄存器。累加器的功能是:当运算器的算术逻辑单元ALU执行算术或逻辑运算时,为ALU提供一个工作区,可以为ALU暂时保存一个操作数或运算结果。显然,运算器中至少要有一个累加寄存器。

程序状态字寄存器

程序状态字(Program Status Word,PSW)用来表征当前运算的状态及程序的工作方式。程序状态字寄存器用来保存由算术/逻辑指令运行或测试的结果所建立起来的各种条件码内容,如运算结果进/借位标志(C)、运算结果溢出标志(O)、运算结果为零标志(Z)、运算结果为负标志(N)、运算结果符号标志(S)等,这些标志位通常用1位触发器来保存。除此之外,程序状态字寄存器还用来保存中断和系统工作状态等信息,以便CPU和系统及时了解机器运行状态和程序运行状态。因此,程序状态字寄存器是一个保存各种状态条件标志的寄存器。

内存资料寄存器主存储器

编辑

语音

主存储器(简称内存或主存)是计算机系统中一个主要部件, 用于保存进程运行时的程序和数据,也称可执行存储器,其容量对于当前的微机系统和大中型机,可能一般为数十 MB到数 GB,而且容量还在不断增加,而嵌入式计算机系统一般仅有几十 KB 到几 MB。CPU的控制部件只能从主存储器中取得指令和数据,数据能够从主存储器读取并将它们装入到寄存器中,或者从寄存器存入到主存储器。CPU 与外围设备交换的信息一般也依托于主存储器地址空间。由于主存储器的访问速度远低于 CPU 执行指令的速度,为缓和这一矛盾,在计算机系统中引入了寄存器和高速缓存。

参考资料

1.

白中英.计算机组成原理:科学出版社,2012

寄存器属于计算机存储设备吗,内存资料寄存器相关推荐

  1. 计算机未来的储存装置,图说计算机存储设备

    现在大家可能都已经对上GB的存储设备司空见惯了,可是也许您没曾想到20年这样容量的硬盘是同冰箱大小相仿的.今天的Royal Pingdom网站上撰写了一篇计算机存储设备历史的文章,用图片的形式回顾了之 ...

  2. 计算机存储与图片内存占用

    一.存储 计算机存储单位一般用字节(Byte,或B).千字节(KB).兆字节(MB).吉字节(GB).太字节(TB).拍字节(PB).艾字节(EB).泽它字节(ZB,又称皆字节).尧字节(YB)表示. ...

  3. 计算机存储中的内存地址与寻址

    什么是位? 位表示的是二进制位,一般称为比特,即0或1,是计算机存储的最小单位: 什么是字节? 字节是计算机中数据处理的基本单位:计算机中以字节为单位存储和解 释信息,规定一个字节由八个二进制位构成, ...

  4. 计算机存储单位以及内存原理

    计算机的存储单位: 计算机系统数据只用0和1这种表现形式,(这里只表示一个数据点,不是数字),一个0或者1占一个"位",而系统中规定8个位为一个字节. 电脑的各种存储器的最小的存储 ...

  5. 七、内存、寄存器数据的传送

    1. 从内存中取数据存放到寄存器中 2. 从寄存器中取数据存放到内存中 寄存器是CPU里的东西,内存是挂在CPU外面的数据总线上的,访问内存时要在CPU的寄存器填上地址,再执行相应的汇编指令,这时CP ...

  6. android高通i2c/cci控制没有寄存器地址的马达/设备

    android高通i2c/cci控制没有寄存器地址的马达/设备 如何控制没有寄存器地址的i2c/cci马达. 控制原理很简单,两种情况, 其一,如果是i2c就不发送地址只发送数据. 其二,如果是cci ...

  7. 计算机存储金字塔层次结构:寄存器 高速缓存 内存 硬盘

    计算机存储器的金字塔层次结构,参考这里 CPU.内存.硬盘的关系:硬盘用来存储我们的程序和数据,当我们运行程序的时候,CPU首先接受到我们的命令,之后CPU是告诉硬盘,我要运行你存储的程序A,你把程序 ...

  8. 开始计算机USB存储功能,USB存储设备禁用怎么设置

    因为有些情况下我们必须得禁止USB存储设备,特别是涉及到当文件被泄漏或者复制时,那如何设置禁用USB存储设备呢?下面是学习啦小编为大家介绍禁用USB存储设备的设置方法,欢迎大家阅读. 禁用USB存储设 ...

  9. u盘是计算机储存设备吗,U盘存储器是哪种存储类型?

    USB磁盘,也称为U盘,也称为USB磁盘,它是U盘的谐音[5].它是用于备份数据的移动存储设备,携带方便. U盘是一种闪存,因此也称为闪存盘.它的特点是紧凑,便携,存储容量大,价格低.以下是学习编辑器 ...

最新文章

  1. Git——如何将本地项目提交至远程仓库(第一次)
  2. 公共安全再受质疑 看安防语音对讲新趋势
  3. location.hash属性介绍
  4. win7系统, vim的_vimrc文件无法修改
  5. Web前端工程师的一些常见误区介绍!
  6. OAUTH 2.0授权码授予
  7. 调试通过的android手机调用网上.net web service的例子
  8. 随想录(学习使用virtualbox软件)
  9. [Android系列—] 1. Android 开发环境搭建与Hello World
  10. 管理感悟:怎样给程序找好的思路
  11. simulink如何更新版本的文件(mdl或slx),How to load models created with a newer version of Simulink
  12. 该怎么标注建筑图纸后进行保存?
  13. error: expected unqualified-id before 'xxx'
  14. vba操作ie关闭窗口
  15. linux tail 命令 阿星小栈
  16. HBuilderX快捷键大全
  17. Bootstrap相关整理、免费主题整理
  18. 【考研英语-基础-简单句】简单句的核心变化_谓语动词时态(常用8种+4)
  19. 优思学院:ILSSI 的六西格玛黑带大师(MBB)
  20. 如何在浏览器中运行Linux程序,在linux自定义协议,让浏览器可以调用本地程序...

热门文章

  1. iphone绿屏还没有修复计算机,iOS最新版本要来了!绿屏bug终于修复,建议iPhone12用户更新!...
  2. PHP 中文工具类,支持汉字转拼音、拼音分词、简繁互转
  3. UOS安装 .exe 应用
  4. Linux下载vimplus
  5. FEI Amira 6.0.1 | Win中文版 | 可视化数据分析工具丨安装教程
  6. 小程序获取太阳码(二维码)accessToken未到7200秒,却失效
  7. linux下重启php服务
  8. 外接27寸4K显示器贼爽,这就送你
  9. python-def函数的定义
  10. Linux Command date 显示时间