Hola. He hecho este programa para contar el número de veces que aparece un carácter en MIPS, pero al ejecutar me sale un texto con el resultado que busco y acto seguido otro texto con el contador cambiado, es decir, algo así:
- El caracter se ha introducido 2 veces.
- El caracter se ha introducido 4 veces.
Espero que puedan ayudarme a detectar el error. Gracias .
contar_letras: # a0 es contar_c, a1 es fin_c
# TODO
move $t0, $a0
move $t1, $a1
li $t3, 0
li $t4, 0
la $a0, str014
li $v0, 4
syscall
while: beq $t3, $t1, fin_while
li $v0, 12
syscall
move $t3, $v0
if: bne $t3, $t0, fin_if
addiu $t4, $t4, 1
fin_if:
j while
fin_while:
la $a0, str011
li $v0, 4
syscall
li $v0, 1
move $a0, $t4
syscall
la $a0, str013
li $v0, 4
syscall
jr $ra
- El caracter se ha introducido 2 veces.
- El caracter se ha introducido 4 veces.
Espero que puedan ayudarme a detectar el error. Gracias .
contar_letras: # a0 es contar_c, a1 es fin_c
# TODO
move $t0, $a0
move $t1, $a1
li $t3, 0
li $t4, 0
la $a0, str014
li $v0, 4
syscall
while: beq $t3, $t1, fin_while
li $v0, 12
syscall
move $t3, $v0
if: bne $t3, $t0, fin_if
addiu $t4, $t4, 1
fin_if:
j while
fin_while:
la $a0, str011
li $v0, 4
syscall
li $v0, 1
move $a0, $t4
syscall
la $a0, str013
li $v0, 4
syscall
jr $ra