汇编浮点代码错误
assembly floating point code error
这些是我的代码行:
li $v0, 6 # select read_float
syscall # run read_float
jal p4 # run println
mfc1 $f4, $v0
编译器给出以下错误:
spim:文件 /home/robertina/Scrivania/Labo Spim/mioprogetto/mioprogetto.s 第 132 行的(解析器)语法错误
mfc1 $f4, $v0
有人知道为什么这条线不能正常工作吗?
用于 MIPS mfc1 quickly shows 的快速 google mfc1
从 协处理器 1 移动 ,并且 mfc1
和 mtc1
(移动 到 coproc 1)将 FP 寄存器放在第二位(无论它是源还是目标)。
mfc1 $v0, $f4 # set $v0 = $f4
(注意,通常不要在你的 asm 中写这样的注释。描述指令存在的原因,而不是你可以从汇编手册中查找它的东西,除非有一些棘手或不明显的东西它。您问题中的评论很好,例如 select read_float
比 put 6 into $v0
)
更有意义
很遗憾,您的汇编程序给出了如此无用的错误消息,甚至没有为您指明正确的方向。大多数汇编器都比这更好。
这些是我的代码行:
li $v0, 6 # select read_float
syscall # run read_float
jal p4 # run println
mfc1 $f4, $v0
编译器给出以下错误:
spim:文件 /home/robertina/Scrivania/Labo Spim/mioprogetto/mioprogetto.s 第 132 行的(解析器)语法错误 mfc1 $f4, $v0
有人知道为什么这条线不能正常工作吗?
用于 MIPS mfc1 quickly shows 的快速 google mfc1
从 协处理器 1 移动 ,并且 mfc1
和 mtc1
(移动 到 coproc 1)将 FP 寄存器放在第二位(无论它是源还是目标)。
mfc1 $v0, $f4 # set $v0 = $f4
(注意,通常不要在你的 asm 中写这样的注释。描述指令存在的原因,而不是你可以从汇编手册中查找它的东西,除非有一些棘手或不明显的东西它。您问题中的评论很好,例如 select read_float
比 put 6 into $v0
)
很遗憾,您的汇编程序给出了如此无用的错误消息,甚至没有为您指明正确的方向。大多数汇编器都比这更好。