我正在 NIOS II IDE 中学习 MIPS 32 位汇编,我有一个完整的工作子例程,它将存储在 r4 和 r5 中的两个数字相乘并在 r2 中返回结果:
.global muladd # makes label "main" globally known
.text # Instructions follow
.align 2 # Align instructions to 4-byte words
muladd:
movi r2, 0 # total = 0
movi r8, 0 # i = 0
L1: # if( i >= a ) goto L2
bge r8, r4, L2 # a i r4
# total = total + b
add r2, r2, r5 # öka b med r5
addi r8, r8, 1 # i = i + 1
br L1 # goto L1
L2: # return( total )
ret
如何调用子例程并从中打印一些内容以确保它按预期工作?这是我的第一个子程序,我以前从未调用过子程序,所以如果我不能马上理解所有内容,请原谅我。