您好,欢迎来电子发烧友网! ,新用户?[免费注册]

您的位置:电子发烧友网>电子百科>电脑硬件>台式机>

计算机寻址方式解析

2010年04月15日 11:22 www.obk20.com 作者:佚名 用户评论(0
计算机寻址方式解析

寻址方式 就是寻找操作数地址的方式,解决的是如何在指令中表示一个操作数的地址。

形式地址 :在指令中出现的操作数地址称为形式地址。

物理地址 :将形式地址并用某些规则计算出操作数在内存中的真正地址称为物理地址。

计算机常用的寻址方式有以下几种:
1、立即数寻址:操作数直接出现在指令字中。

例如 MOVE R1,100 操作码 R1 1 1 0 0 1 0 0

2、直接寻址:在指令的操作数地址字段直接给出操作数在内存中的地址。
例如 MOVE R1,2000H

 操作码

R1


2 0 0 0 H 

3、寄存器寻址、寄存器间接寻址

①寄存器寻址是在指令中直接给出操作数所在的通用寄存器的编号。如 ADD R1,R2

②寄存器间接寻址,在寄存器中给出的不是一个操作数,而是操作数在内存中的地址。

4、变址寻址:是把指令中的一个数值(称为变址偏移量)与指定的一个寄存器(称为变址寄存器)的内容相加之和作为操作数的 地址。


5、相对寻址:是把指令中的一个数值(称为相对寻址偏移量)与程序计数器PC的内容相加之和作为操作数的地址或转移指令的转移地址。

与变址寻址的区别:变址寄存器可以是多个寄存器中的一个,而相对寻址中的寄存器已确定为PC,故无须在指令中指定。

6、基地址寻址:是把程序中所用的一个地址与一个特定的寄存器(称为基地址寄存器)的内容相加之和作为操作数的地址或指令地址。它与变址寻址、相对寻址形式上相似,但其用法却与二者有很大差别。基地址寄存器中的值由特权指令设定,用户不能在自己程序中修改。主要用于为多道程序或浮动地址程序定位存储空间。

7、间接寻址:是指在指令字的地址字段给出的是一个操作数地址的地址。

8、堆栈寻址:系统已用一个特定的寄存器称为堆栈指针(SP)的来访问堆栈,故不必在指令中指出操作数地址。

非常好我支持^.^

(5) 0.9%

不好我反对

(551) 99.1%

( 发表人:admin )

      发表评论

      用户评论
      评价:好评中评差评

      发表评论,获取积分! 请遵守相关规定!