MIPS 浮点加法
MIPS floating point add
我正在尝试制作一个简单的函数,它添加到作为 MIPS 中的参数传递的浮点数。之前我做了一个简单的代码来添加整数:
move v0,a0
add v0,v0,a1
j ra
复制它我对花车做了类似的事情
l.d $f0,0($a0)
l.d $f2,0($a1)
add.d $f0,$f0,$f2
j ra
导致编译错误:
Error: illegal operands `l.d'
我猜这是因为我试图从 a0 获取参数。我应该如何接收双浮点参数,添加它们并返回它们。
提前致谢
尝试 ldc1
而不是 l.d
。 l.d
很可能是一个宏,出于某种原因它不是 defined/available。
我看到了我的错误。必须通过引用传递它们并尊重 ABI :)
谢谢
我正在尝试制作一个简单的函数,它添加到作为 MIPS 中的参数传递的浮点数。之前我做了一个简单的代码来添加整数:
move v0,a0
add v0,v0,a1
j ra
复制它我对花车做了类似的事情
l.d $f0,0($a0)
l.d $f2,0($a1)
add.d $f0,$f0,$f2
j ra
导致编译错误:
Error: illegal operands `l.d'
我猜这是因为我试图从 a0 获取参数。我应该如何接收双浮点参数,添加它们并返回它们。
提前致谢
尝试 ldc1
而不是 l.d
。 l.d
很可能是一个宏,出于某种原因它不是 defined/available。
我看到了我的错误。必须通过引用传递它们并尊重 ABI :) 谢谢