Assembly MIPS案例转换问题

Assembly MIPS案例转换问题,assembly,mips,Assembly,Mips,我对一个mips程序有一些问题,它接受一个字符串,并将小写字母a转换为大写字母a。我已经写了大部分内容,但我似乎不知道如何让输出打印新字符串 .data str: .asciiz "abaaabaaabbbbccccdddaaddbaabbbabab \n\n" prompt: .asciiz "Given String is = " ans: .asciiz "Replaced String is = " .text .globl main main: la $a0, prompt

我对一个mips程序有一些问题,它接受一个字符串,并将小写字母a转换为大写字母a。我已经写了大部分内容,但我似乎不知道如何让输出打印新字符串

.data

str: .asciiz "abaaabaaabbbbccccdddaaddbaabbbabab \n\n"
prompt: .asciiz "Given String is = "
ans: .asciiz "Replaced String is = "



.text
.globl main
main:

la $a0, prompt
li $v0, 4
syscall

la $a0, str
li $v0, 4
syscall

la $a0, ans
li $v0, 4
syscall


la $t1, str
li $t5, 97


Loop:

lb $t0, 0($t1)
beqz $t0, StrEnd
bne $t0, $t5, nextletter 
addi $t0, $t0, -32
sb $t0, 0($t1)

nextletter:
addi $t0, $t0, 1

j Loop


StrEnd:

move $a0, $t1
li $v0, 1
syscall


li $v0, 10
syscall

这取决于MIPS芯片和输入/输出外围设备的连接方式。芯片本身没有I/O外围设备,但有输入和输出引脚。谢谢,我弄明白了。我在循环中使用了错误的寄存器,忘记调用字符串来打印,而是打印了一个数字。