先决条件–寻址模式,8085微处理器中的寻址模式
指定要由指令操作的数据的方式称为寻址模式。这指定给定的数据是立即数或地址。它还指定给定的操作数是寄存器还是寄存器对。
寻址方式类型:
- 寄存器模式–在这种寻址模式下,两个操作数都是寄存器。
例子:MOV AX, BX XOR AX, DX ADD AL, BL
- 立即模式–在这种寻址模式下,源操作数是8位或16位数据。目标操作数永远不能是立即数据。
例子:MOV AX, 2000 MOV CL, 0A ADD AL, 45 AND AX, 0000
注意,要初始化段寄存器的值,需要一个寄存器。
MOV AX, 2000 MOV CS, AX
- 位移或直接模式–在这种寻址模式中,有效地址直接在指令中作为位移给出。
例子:MOV AX, [DISP] MOV AX, [0500]
- 寄存器间接模式–在此寻址模式下,有效地址为SI,DI或BX。
例子:MOV AX, [DI] ADD AL, [BX] MOV AX, [SI]
- 基于索引的模式–在这种情况下,有效地址是基址寄存器和索引寄存器的总和。
Base register: BX, BP Index register: SI, DI
物理内存地址是根据基址寄存器计算的。
例子:MOV AL, [BP+SI] MOV AX, [BX+DI]
- 变址模式–在这种寻址模式下,有效地址是变址寄存器和位移的总和。
例子:MOV AX, [SI+2000] MOV AL, [DI+3000]
- 基于模式–在这种情况下,有效地址是基址寄存器和位移的总和。
例子:MOV AL, [BP+ 0100]
- 基于索引的位移模式–在这种寻址模式下,有效地址是索引寄存器,基址寄存器和位移的总和。
例子:MOV AL, [SI+BP+2000]
- 字符串模式–此寻址模式与字符串指令有关。在这种情况下,SI和DI的值将根据方向标记的值自动递增和递减。
例子:MOVS B MOVS W
- 输入/输出模式–此寻址模式与输入输出操作有关。
例子:IN A, 45 OUT A, 50
- 相对模式–
在这种情况下,有效地址是参照指令指针来计算的。
例子:JNZ 8 bit address IP=IP+8 bit address