📜  8086微处理器中的寻址模式

📅  最后修改于: 2021-06-28 16:42:36             🧑  作者: Mango

先决条件–寻址模式,8085微处理器中的寻址模式
指定要由指令操作的数据的方式称为寻址模式。这指定给定的数据是立即数或地址。它还指定给定的操作数是寄存器还是寄存器对。

寻址方式类型:

  1. 寄存器模式–在这种寻址模式下,两个操作数都是寄存器。
    例子:
    MOV AX, BX
    XOR AX, DX
    ADD AL, BL
  2. 立即模式–在这种寻址模式下,源操作数是8位或16位数据。目标操作数永远不能是立即数据。
    例子:
    MOV AX, 2000
    MOV CL, 0A
    ADD AL, 45
    AND AX, 0000

    注意,要初始化段寄存器的值,需要一个寄存器。

    MOV AX, 2000
    MOV CS, AX 
  3. 位移或直接模式–在这种寻址模式中,有效地址直接在指令中作为位移给出。
    例子:
    MOV AX, [DISP]
    MOV AX, [0500]
  4. 寄存器间接模式–在此寻址模式下,有效地址为SI,DI或BX。
    例子:
    MOV AX, [DI]
    ADD AL, [BX]
    MOV AX, [SI] 
  5. 基于索引的模式–在这种情况下,有效地址是基址寄存器和索引寄存器的总和。
    Base register: BX, BP
    Index register: SI, DI 

    物理内存地址是根据基址寄存器计算的。
    例子:

    MOV AL, [BP+SI]
    MOV AX, [BX+DI]
  6. 模式–在这种寻址模式下,有效地址是变址寄存器和位移的总和。
    例子:
    MOV AX, [SI+2000]
    MOV AL, [DI+3000]
  7. 基于模式–在这种情况下,有效地址是基址寄存器和位移的总和。
    例子:
    MOV AL, [BP+ 0100]
  8. 基于索引的位移模式–在这种寻址模式下,有效地址是索引寄存器,基址寄存器和位移的总和。
    例子:
    MOV AL, [SI+BP+2000] 
  9. 字符串模式–此寻址模式与字符串指令有关。在这种情况下,SI和DI的值将根据方向标记的值自动递增和递减。
    例子:
    MOVS B
    MOVS W 
  10. 输入/输出模式–此寻址模式与输入输出操作有关。
    例子:
    IN A, 45
    OUT A, 50 
  11. 相对模式–
    在这种情况下,有效地址是参照指令指针来计算的。
    例子:
    JNZ 8 bit address
    IP=IP+8 bit address