Floating point 在MIPS中乘法后打印浮点 .data 时间:。浮动310.4390.8 英里:。浮动12.0,96.2 .文本 li$t0,3#终止值 li$t1,4字节移位 li$t2,1#i增加1 la$a1,时间#将时间地址放入$a1 la$a2,miles#将miles的地址放入$a2 l、 新加坡元f1、($a1) l、 新加坡元f2、($a2) mul.s$f3、$f1、$f2 李$v0,2 l、 s$f12,
以下是一个答案,以完成以下基本原理:Floating point 在MIPS中乘法后打印浮点 .data 时间:。浮动310.4390.8 英里:。浮动12.0,96.2 .文本 li$t0,3#终止值 li$t1,4字节移位 li$t2,1#i增加1 la$a1,时间#将时间地址放入$a1 la$a2,miles#将miles的地址放入$a2 l、 新加坡元f1、($a1) l、 新加坡元f2、($a2) mul.s$f3、$f1、$f2 李$v0,2 l、 s$f12,,floating-point,mips,Floating Point,Mips,以下是一个答案,以完成以下基本原理: 要从内存加载浮点值时,应使用l.s$f12,($a1) 如果您已经在某个协处理器寄存器(但不在syscall 2使用的$f12中)中拥有要打印的浮点数字,则必须使用指令mov.s将其内容从浮点寄存器中移出,该寄存器的值为$f12 因此,在您的示例中,您将执行以下操作: .data time: .float 310.4, 390.8 miles: .float 12.0, 96.2 .text li $t
- 要从内存加载浮点值时,应使用
l.s$f12,($a1)
- 如果您已经在某个协处理器寄存器(但不在syscall 2使用的
中)中拥有要打印的浮点数字,则必须使用指令$f12
将其内容从浮点寄存器中移出,该寄存器的值为mov.s
$f12
.data
time: .float 310.4, 390.8
miles: .float 12.0, 96.2
.text
li $t0, 3 #terminating value
li $t1, 4 #byte shifting
li $t2, 1 #i increments by 1
la $a1, time # put address of time into $a1
la $a2, miles # put address of miles into $a2
l.s $f1, ($a1)
l.s $f2, ($a2)
mul.s $f3, $f1, $f2
li $v0, 2
l.s $f12, __ <------- here????
syscall
下面是一个答案,以完成背后的基本原理:
- 要从内存加载浮点值时,应使用
l.s$f12,($a1)
- 如果您已经在某个协处理器寄存器(但不在syscall 2使用的
中)中拥有要打印的浮点数字,则必须使用指令$f12
将其内容从浮点寄存器中移出,该寄存器的值为mov.s
$f12
.data
time: .float 310.4, 390.8
miles: .float 12.0, 96.2
.text
li $t0, 3 #terminating value
li $t1, 4 #byte shifting
li $t2, 1 #i increments by 1
la $a1, time # put address of time into $a1
la $a2, miles # put address of miles into $a2
l.s $f1, ($a1)
l.s $f2, ($a2)
mul.s $f3, $f1, $f2
li $v0, 2
l.s $f12, __ <------- here????
syscall
使用:
mov.s$f12,$f3
。。。。这里‘谢谢,我看到了另一个用法:mov.s$f12,$f3
你放在哪里了’。。。。谢谢,我看到另一个了