Assembly MIPS输出0.0而不是输入
对MIPS和Assembly来说是全新的。试图制作一个简单的程序来读取浮点并输出它。有点麻烦:Assembly MIPS输出0.0而不是输入,assembly,double,mips,qtspim,Assembly,Double,Mips,Qtspim,对MIPS和Assembly来说是全新的。试图制作一个简单的程序来读取浮点并输出它。有点麻烦: .data msg2: .asciiz "please enter a value: " .text .globl main main: li $v0, 4 #load value for print_string la $a0, msg2 #load addr
.data
msg2: .asciiz "please enter a value: "
.text
.globl main
main:
li $v0, 4 #load value for print_string
la $a0, msg2 #load address of msg2 into $a0
syscall #print msg2 to screen
li $v0, 6 #load value for read_float
mov.s $f1, $f0
syscall #read inputted value
li $v0, 2
syscall
jr $ra
我将在SPIM中输入我的浮点,它将返回0.00000000。这似乎应该更简单。我一直在寻找有关MIPS和float/double的帮助,但找不到太多。任何帮助都将不胜感激
read\u float
调用(syscall 6)将其结果放入$f0
print\u float
调用(syscall 2)期望其参数位于$f12
中
您需要一些东西来将值移动到适当的位置。mov.s$f12,$f0'会实现这一点吗?可能是的。我想这是一个家庭作业问题,所以我不想给你太多的答案