在 MIPS 中总计两个浮点数总是 returns 0.0
Summing up two floats always returns 0.0 in MIPS
我正在用汇编编写我的第一个程序,我只需要总结 2.5 和 2.5
这是我的代码
.data
#2.5+2.5=5.0
myNumber1: .float 2.5
myNumber2: .float 2.5
.text
lwc1 $f1, myNumber1
lwc1 $f2, myNumber2
add.s $f3, $f1, $f2
li $v0, 3
syscall
出于某种原因,它在输出中总是 returns 0.0,但在内存中,它似乎正确地将值求和并存储在 $f3 中。我在这里错过了什么?
根据 this page 打印浮点数的系统调用是 2 而不是 3。此外,您必须在寄存器 $f12 中打印要打印的浮点数。
因此,这应该有效:
add.s $f12, $f1, $f2
li $v0, 2
syscall
我正在用汇编编写我的第一个程序,我只需要总结 2.5 和 2.5 这是我的代码
.data
#2.5+2.5=5.0
myNumber1: .float 2.5
myNumber2: .float 2.5
.text
lwc1 $f1, myNumber1
lwc1 $f2, myNumber2
add.s $f3, $f1, $f2
li $v0, 3
syscall
出于某种原因,它在输出中总是 returns 0.0,但在内存中,它似乎正确地将值求和并存储在 $f3 中。我在这里错过了什么?
根据 this page 打印浮点数的系统调用是 2 而不是 3。此外,您必须在寄存器 $f12 中打印要打印的浮点数。
因此,这应该有效:
add.s $f12, $f1, $f2
li $v0, 2
syscall