MOV AX,BX 与 MOV AX,[BX] 区别

<1> MOV AX,BX

        假设 AX = 2022H,BX = 2099H,则在指令 MOV AX,BX 执行之后,AX = 2099H,BX = 2099H

<2> MOV AX,[BX]

        假设 AX = 2022H, BX = 2099H,DS = 2000H,

        可以算出物理地址 PA = DS * 10H + BX = 22099H

        如果在指令执行之前,22099H 中存储的数据为A0H,2209AH中存储的数据为60H,则在指令 MOV AX,[BX] 执行之后,AX = 60A0H,BX = 2099H

总结:

        从两次执行结果可以看出,MOV AX,BX 是数据上的传递,将BX的数据送至给AX,致使AX与BX中的数据内容一致。而 MOV AX,[BX] 是将BX所对应的段寄存器中实际的物理地址对应的数据送至给AX。两者是截然不同的,一个是数据上的传递,一个是BX所对段寄存器地址中所包含的内容上的传递。

你可能感兴趣的:(微机原理与汇编语言,vim)