MIPS浮法印刷

时间:2015-05-30 13:50:58

标签: double mips

我在MIPS中编写了这段代码来计算具有双浮点精度的N值之和。 但是当我打印出结果时,它打印0.00000,虽然我在内存中看到它是正确的结果。

任何人都可以帮我这个吗?

#architecture ex.2

.data
first: .asciiz "Give the number of the summation"
m1: .asciiz "Give the"
m2: .asciiz "th number."
nl: .asciiz "\n"
final: .asciiz "The sum is"





.text
main:



li $v0, 4          
la $a0, first      
syscall
li $v0,5
syscall
move $t1,$v0
li $v0, 4          
la $a0, nl      
syscall


li $t2,0
li $t0,1

mtc1.d $t2, $f2
cvt.d.w $f2, $f2  



Sumin:

li $t3,0

li $v0, 4          
la $a0, m1      
syscall
li $v0,1
move $a0,$t0
syscall
li $v0, 4          
la $a0, m2      
syscall
li $v0, 4          
la $a0, nl      
syscall

li $v0,5
syscall
move $t3,$v0

mtc1.d $t3, $f14
cvt.d.w $f14, $f14

add.d $f2,$f2,$f14


addi $t0,$t0,1
ble $t0,$t1,Sumin

Sumexit:

li $v0, 4          
la $a0, final      
syscall
li $v0, 4          
la $a0, nl      
syscall


li $v0,2
mov.d $f12,$f2
syscall

END:jr $ra

1 个答案:

答案 0 :(得分:1)

我只是建议在$f12中打印双倍,而不仅仅是浮动

li $v0, 3
mov.d $f12, $f2
syscall