计算机系统结构课实验,让使用 ** DLX ** 写一段汇编代码,完成 双精度浮点 的 除法 运算,并输出结果。
新手不太会往这里码代码,可能下面代码格式有点乱。请谅解TAT
然后,我和同学照实验指导书给出的例子,照猫画虎做出的代码大致是:
.data
Prompt1: .asciiz "First Number:"
Prompt2: .asciiz "Second Number: "
PrintfFormat: .asciiz "div = %g\n\n"
.align 2
PrintfPar: .word PrintfFormat
PrintfValue: .space 8
.text
.global main
main:
addi r1,r0,Prompt1
jal InputUnsigned
add r2,r1,r0
addi r1,r0,Prompt2
jal InputUnsigned
bnez r1,Loop
Loop:
movi2fp f10,r1
cvti2d f2,f10
movi2fp f11,r2
cvti2d f1,f11
divf f1,f1,f2
Finish:
sF PrintfValue,f1
addi r14,r0,PrintfPar
trap 5
trap 0
使用DLX将这个程序和一个input.s程序装入主存后,提示出错,input.s应该是没有错误的,因为和别的程序同时装入主存可以运行。错误截图下面附上。
这个问题我们怎么都解决不了,求助。