我需要接受一个字并将其作为dword放在偏移中。我如何在86x汇编中完成它?
答案 0 :(得分:1)
听起来你想要一个扩展负载的符号,例如MOVZX
或MOVSX
(对于零扩展,分别用于无符号或带符号的扩展名),然后你可以将它用作32位移位,例如:
MOVSX EAX,AX ;extend 16 bit to 32 bit
MOV EAX,[ESI+EAX] ;load a value using the 32bit displacement
(上面的例子非常有用,因为还有其他注册表扩展指令,如CWD
或CDQ
,请参阅this)。