Замена повторяющихся последовательных символов на X - PullRequest
0 голосов
/ 09 июля 2019

У меня проблемы с кодом.

Мне нужно это / вывод на консоли.


Строка ввода: aaabcccdeefggg

Введите символ: X

Заменить: XXXbXXXdXXfXXX <- Я хочу этот вывод </p>

Но я получаю этот вывод -> 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
...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...