+ -
当前位置:首页 → 问答吧 → 程序员可以访问哪个寄存器?PC?IR?MAR?MDR?网上查了有选择A和C的

程序员可以访问哪个寄存器?PC?IR?MAR?MDR?网上查了有选择A和C的

时间:2011-05-03

来源:互联网

编写汇编语言程序时,下列寄存器中程序员可访问的是(5)。
(5) A.程序计数器(PC) B.指令寄存器(OR)
C.存储器数据寄存器(MDR) D.存储器地址寄存器(MAR)

作者: SCAUSCNU   发布时间: 2011-05-03

选A。
程序计数器,也叫IP(EIP),用来存储下一条指令的地址。可以通过call,jmp等跳转指令间接改变,可以用Move,push等读出其值,但是不可写。
指令寄存器(IR )用来保存当前正在执行的一条指令。当执行一条指令时,先把它从内存取到内存数据寄存器(MDR)中,然后再传送至IR。
主存与CPU之间的硬连接:主存与CPU的硬连接有三组连线:地址总线(AB)、数据总线(DB)和控制总线(CB)。把主存看作一个黑盒子,存储器地址寄存器(MAR)和存储器数据寄存器(MDR)是主存和CPU之间的接口。MAR可以接收由程序计数器(PC)的指令地址或来自运算器的操作数的地址,以确定要访问的单元。MDR是向主存写入数据或从主存读出数据的缓冲部件。MAR和MDR从功能上看属于主存,但通常放在CPU内。

作者: fuchen_1989   发布时间: 2011-05-03