DIV 的余数不在 EDX 中

Remainder of DIV is not in EDX

我已将 num1num2remainder 变量定义为 DWORD。我从用户那里得到 2 个数字,它们是 num1num2。我正在尝试将 num1 除以 num2。我使用的数字是 num1=37 和 num2=5

sub    edx,edx    ; Zero edx
mov    eax,num1
mov    ebx,num2
div    ebx
mov    remainder,edx
mov    edx, OFFSET remainder
call   WriteInt

出于某种原因,这会打印出 7,这是商,而不是余数。我在这里做错了什么?

用这个。

mov    edx,0   ; Zero edx
mov    eax,num1
mov    ebx,num2
div    ebx      
mov    eax,edx     ; EAX = reminder
call   WriteDec    ; Display 2