我正在使用ASM中的浮点单元制作更大的程序,但我得错了数字。我做了一个简单的代码,它也给出了错误的数字。有谁知道为什么?这有什么不对?我正在使用ubuntu 32b。
SYSEXIT = 1
.align 32
.data
a: .float 1
b: .float 2
test1: .float 0
.text
.global main
main:
finit
fld a
fld b
loop:
fmulp
fstp test1
mov $SYSEXIT, %eax
int $0x80
我正在使用gdb,在“打印”之后,它显示的是大数而不是1,而其他2个变量(b,test1)则相同。
这里有什么问题?