gpt4 book ai didi

linux - 汇编部门和 float

转载 作者:IT王子 更新时间:2023-10-29 01:09:05 25 4
gpt4 key购买 nike

  mov eax, 0x01
mov ecx, 0x02
div ecx ; Divide AX/CX, saves remainder in DX
cmp dx, 0
je OddNumber
int 80h

当我尝试除以 1/2 时,它没有标记 OddNumber,而是返回“ float 异常”。我知道 1/2 是一个 float ,但我该如何处理呢?谢谢。

GDB 显示“程序收到信号 SIGFPE,算术异常。”顺便说一下。

最佳答案

  1. 在调用 div ecx 之前,您需要将 edx 清零。当使用 32 位除数(例如,ecx)时,divedx:eax 中的 64 位值除以其参数,因此如果 edx 中有垃圾,它会被视为股息的一部分。

  2. div 之后,您可能想要比较 edx,而不仅仅是 dx

关于linux - 汇编部门和 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8649180/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com