能力值:
( LV9,RANK:1250 )
|
-
-
2 楼
[QUOTE=cunning;363842]在看汇编资料,对以下问题感到困惑,请各位大侠能否说明一下:
问题:从原理上讲,直接寻址方式的段超越和寄存器间接寻址方式的段超越是否一样?(只针对段超越的方式)?
例:直接寻址:MOV AX,ES:VALUE
间接寻址:MOV AX,ES:[BX][/QUOTE]
我到现在还不懂什么是直接寻址和间接寻址...动态调试能明白代码是怎么工作的就行。
|
能力值:
( LV9,RANK:460 )
|
-
-
3 楼
[QUOTE=cunning;363842]在看汇编资料,对以下问题感到困惑,请各位大侠能否说明一下:
问题:从原理上讲,直接寻址方式的段超越和寄存器间接寻址方式的段超越是否一样?(只针对段超越的方式)?
例:直接寻址:MOV AX,ES:VALUE
间接寻址:MOV AX,ES:[BX][/QUOTE]
为了简化指令,CPU默认了某些指令的操作数所使用的段寄存器,如堆栈段默认使用SS,数据段默认使用DS,等等。例如在使用MOV指令传送数据时,如果你想使用ES指向的段中的内容你就必须使用段超越。这并不存在什么方式问题。
|
|
|