【发布时间】:2014-06-19 10:50:00
【问题描述】:
concat:
lb $t0, 0($a0) # $t0 = string1[i]
beq $t0, $0, string2 # if end of string1, go to string2
sb $t0, 0($a2) # stringconcat[i] = string1[i]
addi $a0, $a0, 1 # increment index into string1
addi $a2, $a2, 1 # increment index into stringconcat
j concat # loop back
string2:
lb $t0, 0($a1) # $t0 = string2[j]
beq $t0, $0, done # if end of string2, return
sb $t0, 0($a2) # stringconcat[j] = string2[j]
addi $a1, $a1, 1 # increment index into string2
addi $a2, $a2, 1 # increment index into stringconcat
done:
sb $0, 0($a2) # append null to end of string
jr $ra
我是 MIPS 的新手,我有这个代码作为作业,我不知道要添加什么才能让它在 QtSpim 上运行,请帮忙。
【问题讨论】:
-
PC=0x00400024 发生异常
-
如果您没有将
$a0设置为任何值,则第一条指令可能会出现空指针异常。 -
@user3724875 我正在使用Mars软件运行Mips汇编程序,非常好。下载链接:cld.persiangig.com/download/E68KaQp7cj/Mars4_3.jar/dl
标签: mips string-concatenation spim