地址寄存器用来保存当前CPU所访问的内存单元的地址。由于在内存和CPU之间存在着操作速度上的差别,所以必须使用地址寄存器来保持地址信息,直到内存的读/写操作完成为止。 数据寄存器DR用来暂存微处理器与存储器或输人/输出接口电路之间待传送的数据。地址寄存器AR和数据寄存器DR在微处理器的内部总线和外部总线之间,还起着隔离和缓冲的作用。

1.地址寄存器在什么位置

 

寄存器在CPU中,而地址寄存器是用来找到数据的存放位置的,起的是控制作用,是放在控制器中的。

地址寄存器采用单纯的寄存器结构。在对主存或I/O端口进行访问时,地址寄存器存放当前访问的地址,数据缓冲器实现数据的缓冲。CPU通过修改地址寄存器中的值,就可访问不同的存储器单元及不同的I/O端口。 

地址寄存器可用LPM库中的元件lpm_latch锁存器来完成。图是地址寄存器的结构图。地址寄存器的数据宽度应当与程序计数器的数据宽度一致。data[7…0]是地址寄存器的数据输入端,q[7…0]是地址寄存器的数据输出端,gate是地址锁存器的控制端。gate的作用是当锁存控制脉冲到来时,高电平时数据进入锁存器,低电平时锁存数据,保持输出数据稳定不变。

当CPU和内存进行信息交换,即CPU向内存存/取数据时,或者CPU从内存中读出指令时,都要使用地址寄存器和数据缓冲寄存器。同样,如果我们把外围设备的设备地址作为像内存的地址单元那样来看待,那么,当CPU和外围设备交换信息时,我们同样使用 地址寄存器和数据缓冲寄存器。

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

地址寄存器在什么位置

(图片来源于互联网)

 

2.地址寄存器的作用

 

地址寄存器作用就是保存地址。

存储器寻址分16位指针和32位指针两种,16位指针只能用于T、C和程序块的间接寻址,32位指针用于存储区域的地址但不包含是那个区域。

相对于存储器寻址,寄存器寻址包含32位内部区域指针方式和32位交叉区域指针方式,32位内部区域指针方式和存储器寻址的32位指针一样是寻址存储区域地址不包含是那个区域,但用于间接寻址时寄存器寻址操作更加方便直观,32位交叉区域指针方式则是在32位内部区域指针方式的基础上增加了指向的区域,并且32位交叉区域指针方式也可忽略区域直接作为32位内部区域指针使用。操作起来更加灵活。

地址寄存器的作用

(图片来源于互联网)