问题解答之 指令寻址和操作数寻址

1 .指令寻址方式和操作数寻址方式
   a.
指令寻址方式分为:顺序寻址方式和转移寻址方式。

   b.
操作数寻址方式有以下几种:
1
、立即数寻址:操作数直接出现在指令字中。
例如 MOVE R1100
操作码
R1
1 1 0 0 1 0 0
 
 
2 、直接寻址:在指令的操作数地址字段直接给出操作数在内存中的地址。
例如 MOVE R12000H
 操作码
R1
 
 
2 0 0 0 H  
 
 
3 、寄存器寻址、寄存器间接寻址
寄存器寻址是在指令中直接给出操作数所在的通用寄存器的编号。如 ADD R1R2
寄存器间接寻址,在寄存器中给出的不是一个操作数,而是操作数在内存中的地址。
 
4 、变址寻址:是把指令中的一个数值(称为变址偏移量)与指定的一个寄存器(称为变址寄存器)的内容相加之和作为操作数的地址。
 
5 、相对寻址:是把指令中的一个数值(称为相对寻址偏移量)与程序计数器PC的内容相加之和作为操作数的地址或转移指令的转移地址。
与变址寻址的区别:变址寄存器可以是多个寄存器中的一个,而相对寻址中的寄存器已确定为PC,故无须在指令中指定。

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

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

你可能感兴趣的:(职场,休闲,操作数寻址)