汇编语言常见的寻址方式主要有以下几种:
1. 立即寻址(Immediate Addressing):操作数直接包含在指令中。例如: MOV AX, 10 ,其中 10 就是立即数。
2. 寄存器寻址(Register Addressing):操作数在寄存器中。例如: MOV AX, BX ,数据在 BX 寄存器中。
3. 直接寻址(Direct Addressing):操作数的有效地址直接在指令中给出。例如: MOV AX, [2000H] ,直接给出内存地址 2000H 。
4. 寄存器间接寻址(Register Indirect Addressing):操作数的有效地址在寄存器中。例如: MOV AX, [BX] ,有效地址在 BX 寄存器中。
5. 寄存器相对寻址(Register Relative Addressing):操作数的有效地址是寄存器内容与一个偏移量之和。例如: MOV AX, [BX + 100H] 。
6. 基址变址寻址(Base Index Addressing):操作数的有效地址是基址寄存器与变址寄存器内容之和。例如: MOV AX, [BX + SI] 。
7. 相对基址变址寻址(Relative Base Index Addressing):操作数的有效地址是基址寄存器、变址寄存器内容与一个偏移量之和。例如: MOV AX, [BX + SI + 50H] 。