汇编语言的寻址方式怎么判断?

来源:百度知道 编辑:UC知道 时间:2024/05/28 00:32:27
我刚刚学了,汇编语言的寻址方式,但是做习题的时候有的复杂的寻址我看不出来?能给我出几道例题来讲解吗? MOV DAVL[BP],AX 这样的寻址也对吗?详细讲解下.谢谢了~

汇编语言的寻址方式就是寻找操作数所在地址的方法,有七种:立即寻址、寄存器寻址、直接寻址、寄存器间接寻址、寄存器相对寻址、基址变址寻址、相对基址变址寻址。
1、立即寻址:操作数在指令中,如:MOV AL,12H(源操作数)
2、寄存器寻址:操作数在指令中的寄存器中,如:MOV AL,BH(源操作数)
3、直接寻址:操作数所在存储器的有效地址在指令中,如:MOV AL,[12H](源操作数)
4、寄存器间接寻址:操作数所在存储器的有效地址在指令中的寄存器中,如:MOV AL,[BX](源操作数)
5、寄存器相对寻址:操作数所在存储器的有效地址为指令中的寄存器加位移量,如:MOV AL,[BX+12H]或MOV AL,DAVL[BP](源操作数)
6、基址变址寻址:操作数所在存储器的有效地址为指令中的基址寄存器加变址寄存器,如:MOV AL,[BX+SI]或MOV AL,[BX][SI](源操作数)
7、相对基址变址寻址:操作数所在存储器的有效地址为指令中的基址寄存器加变址寄存器,再加位移量,如:MOV AL,[BX+SI+12H]或MOV AL,DAVL[BX][SI](源操作数)。

MOV DAVL[BP],AX 中目的操作数是寄存器相对寻址,源操作数是寄存器寻址。