当我这样做时,例如,-1%3,我希望结果是2。
当我执行以下TASM指令时,我得到了一个意外的结果:
mov ax, -1
xor bh, bh
mov bl, 3
idiv bl ; ah = FF (I expected 02), al = 00发布于 2012-09-27 08:30:20
This web page指出:
余数的符号始终与被除数的符号相同。
Wikipedia有一些关于带符号余数的陷阱的信息。
一种可能的解决方法是使用div而不是idiv,和/或手动跟踪标志。
https://stackoverflow.com/questions/12611993
复制相似问题