我是大会的新手,我想最终解决这个(我的)问题
在这里,似乎EAX reg的值为00 00 93 19和p2 00 00 10 00(但据我所知,它被用作地址) 当MOV [p2],AX完成时..([]表示它查看0x00001000并且在此地址它将根据小端策略将这些值更改为19 ..etc) 所以我应该理解它... EAX有自己的地址(例如(仅限于想法)0x00000523,并且此地址的值为00 00 93 19 并且p2有自己的地址00 00 10 00和值00 00 66 65(在更改之前)
所以改变之后p2将如下所示:地址00 00 10 00并且值为00 00 93 19?
如果我写MOV p2,AX
,会怎么样?答案 0 :(得分:0)
在某些(大多数?)x86汇编程序中,指令mov p2,ax
与mov [p2],ax
相同。两者都将寄存器的内容移动到与p2
相关联的地址的内存中。
它们都是:
的同义词mov word ptr p2, ax
我记得,其他汇编程序会拒绝mov p2,ax
作为无效指令,但mov [p2],ax
是合法的。
答案 1 :(得分:0)
在mov [p2], ax
地址00 00 10 00
内容00009319
mov p2,ax
无效,因为p2不代表地址。
EAX有自己的地址(例如(仅限于想法)0x00000523,并且此地址的值为00 00 93 19
那是错的。 EAX
是一个寄存器,寄存器没有自己的地址。他们只是有内容。