1

アセンブリ言語の初心者です..そして私はこのコードについて質問があります..それは私にこのエラーを与え続けます-コードで-そうではありません..:?この関数は数値を逆にする必要があります

    rev proc _x:word
uses EAX, EDX, EBX, ECX
LOCALS
MOV EBX, 0
MOV Cx,10
MOV AX, _x
CWD
DIV CX
iMUL EBX,10
MOVS EDX,DX ; error Operand types do not match.. 
push EAX
MOV AX, DX
Again:CWDE
Add EBX, EAX
POP EAX
cmp EAX, 0
JA again
ret
endp rev
4

1 に答える 1

2

アセンブラはおそらくあなたがMOVSB/MOVSW/MOVSD命令を求めていると考えています。そのオペランド(暗黙的)は確かに同じサイズです。

MOVSXの代わりに書いてくださいMOVS

于 2013-03-26T00:12:36.297 に答える