MIPS双精度即时

MIPS双精度即时,mips,Mips,我试图为双精度数字创建一个等价的li。似乎以下方法应该有效,但实际上不行: .main: li $t0, 0 li $t1, 5 mtc1 $t1, $f12 mtc1 $t0, $f13 li $v0, 3 syscall 当我看$f12和$f13时,它的值是5,我认为应该解释为5*2^0。但事实并非如此。相反,它给了我2.5E-323。我做错了什么?我想SPIM可以让你这么做,所以我一直在翻阅他们的源代码,但没有成功地复制它 您已经创建了一

我试图为双精度数字创建一个等价的
li
。似乎以下方法应该有效,但实际上不行:

.main: 
    li $t0, 0
    li $t1, 5
    mtc1 $t1, $f12
    mtc1 $t0, $f13
    li $v0, 3
    syscall

当我看$f12和$f13时,它的值是5,我认为应该解释为5*2^0。但事实并非如此。相反,它给了我2.5E-323。我做错了什么?我想SPIM可以让你这么做,所以我一直在翻阅他们的源代码,但没有成功地复制它

您已经创建了一个非规范化数字(使用指数值零和非零尾数)。您需要查看
double
s的值