我的代码有些麻烦。
我需要在控制台上输入/输出。
输入字符串:aaabcccdeefggg
输入字符:X
替换:XXXbXXXdXXfXXX <-我想要此输出
但是我得到的输出是-> XXabXXcdXefXXg
我不知道错误在哪里,我正在寻找这个错误的小时。
.data
enterString: .asciiz "Input String > "
enterChar: .asciiz "Input char> "
changedString: .asciiz "\nReplace: "
numberOfAdditions: .asciiz "\Total Replaces: "
userInput: .space 555
.text
main:
li $v0, 4
la $a0, enterString
syscall
li $v0, 8
la $a0, userInput
li $a1, 554
syscall
li $v0,4
la $a0,enterChar
syscall
li $v0,12
syscall
move $t5,$v0 # $t0 = character to be replaced
li $t0, 0
li $t1, 1
j findDoubleCharacters
findDoubleCharacters:
lbu $s0, userInput( $t0 )
lbu $s1, userInput( $t1 )
addi $t0, $t0, 1
addi $t1, $t1, 1
beq $s0, $s1, found
beq $s1, 0, end
j findDoubleCharacters
found:
subi $t0, $t0, 1
subi $t1, $t1, 1
sb $t5, userInput($t0)
addi $s2, $s2, 1
j findDoubleCharacters
end:
li $v0, 4
la $a0, changedString
syscall
li $v0, 4
la $a0, userInput
syscall
li $v0, 4
la $a0, numberOfAdditions
syscall
li $v0, 1
move $a0, $s2
syscall
...