版权归原作者所有,如有侵权,请联系我们

[科普中国]-通用寄存器地址

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

定义

通用寄存器地址通常是指CPU用来查找通用寄存器在计算机所在的位置的地址。在不同计算机系统结构中,地址空间的组织方式是不相同的,一般分为3种:3个地址空间的组织方式、2个地址空间的组织方式以及1个地址空间的组织方式,通用寄存器地址所对应的编址也不同。例如1个地址空间的组织方式中,地址空间的地低端地址是CPU的通用寄存器地址。1

地址空间组织方式地址空间可以有以下3种组织方式。

(1)3个地址空间的组织方式

存储空间的存储单位数量越多,用于存储单位编址的地址码越长。CPU中的通用寄存器数量越少,I/O/寄存器的数量稍多,主存储单元的数量要大得多。为了减少指令中的地址码长度,对这3个地址空间独立编址。这3个地址空间的寻址方式也不相同,对寄存器一般采用简单直接寻址方式,对主存空间一般采用间接寻址和变址寻址等多种寻址方式,以避免在指令中直接表示主存单元的地址码。

(2)2个地址空间的组织方式

CPU的通用寄存器独立编址,I/O接口寄存器和主存储器统一编址。统一编址空间的高端地址一般用于I/O接口寄存器地址。

(3)1个地址空间的组织方式

所有数据存储单位统一编址,地址空间的地低端地址是CPU的通用寄存器地址。高端地址是I/O接口寄存器地址。

编址单位

常用的编址单位有:字编址、字节编制和位编址。

字编址是指每个编址单位与访问的数据存储单元一致。字节编址是指每个编址单位都是一个字节,位节编址是指每个编址单位都是一个二进制位。1

通用寄存器介绍

通用寄存器主要包括:数据寄存器、变址寄存器、指针寄存器、段寄存器、指令指针寄存器。通用寄存器可用于传送和暂存数据,也可参与算术逻辑运算,并保存运算结果。除此之外,它们还各自具有一些特殊功能。汇编语言程序员必须熟悉每个寄存器的一般用途和特殊用途,只有这样,才能在程序中做到正确、合理地使用它们。

用途

通用寄存器数据寄存器AX乘、除运算,字的输入输出,中间结果的缓存AL字节的乘、除运算,字节的输入输出,十进制算术运算AH字节的乘、除运算,存放中断的功能号BX存储器指针CX串操作、循环控制的计数器CL移位操作的计数器DX字的乘、除运算,间接的输入输出变址寄存器SI存储器指针、串指令中的源操作数指针DI存储器指针、串指令中的目的操作数指针变址寄存器BP存储器指针、存取堆栈的指针SP堆栈的栈顶指针指令指针IP/EIP标志位寄存器Flag/EFlag32位CPU的段寄存器16位CPU的段寄存器ES附加段寄存器CS代码段寄存器SS堆栈段寄存器DS数据段寄存器新增加的段寄存器FS附加段寄存器GS附加段寄存器。2