MARSでli.sが使えません。私は MIPS プログラミングが初めてで、コ プロセッサを使用しないようにしています。li.s を使用できないのはなぜですか? MARS はプログラムですか? 誰かが私を新しい方向に導いてくれるととても助かります!
user1026822
質問する
3627 次
2 に答える
2
これは疑似命令であり、おそらく mars には実装されていません。li (ori) と mtc1 のシーケンスを使用できます。
これにより、値 1.234 が $fp1 にロードされ、MARS で機能します。
li $t1,0x3f9df3b6
mtc1 $t1,$f1
16 進数値または整数値は、http://babbage.cs.qc.edu/IEEE-754/Decimal.htmlを使用するか、単純なプログラムを使用して見つけることができます (Fortran では、C ではポインター キャストを使用して類似しています)。
read(*,*) a
i=transfer(a,i)
write(*,*) i
end
于 2011-11-10T11:30:39.653 に答える
1
疑似命令 ls とデータ セグメントに格納された定数を使用して、疑似命令 li.s と同じ効果を得ることができます。
l.s $f1, fpconst
.data 0x1000
fpconst:
.float 1.2345
これは、コプロセッサ レジスタ $f1 を使用して浮動小数点定数を格納します。
lw $f1, fpconst
ls の代わりに使用して、定数を通常のレジスタに入れることもできます
于 2011-11-10T14:32:04.627 に答える