标签: assembly modulo tasm
当我这样做时,例如-1%3,我希望结果是2。
当我执行以下TASM指令时,我得到了意想不到的结果:
mov ax, -1 xor bh, bh mov bl, 3 idiv bl ; ah = FF (I expected 02), al = 00
答案 0 :(得分:2)
This web page声明:
余数的符号总是与符号相同 分红
Wikipedia提供了一些有关已签名余数的陷阱信息。
可能的解决方法可能是使用div代替idiv,和/或手动跟踪标记。
div
idiv