solamente tengo que cambiar el 4 por un 1
independientemente de los errores en los or, la idea es esa, verdad?
Pues el 2 lo he acabado usando porque con el 4 no me dejaba.
Asi que supongo que en encode1, tengo los caracteres, y en encode2, las veces que se repite.
Ahora he creado un nuevo "vector" encode, tendria que almacenar un numero, una letra, y asi, hasta que no sea final de caracter, no es asi?
Por cierto recuerdo que el enter me lo contaba, como lo puedo eliminar de encode 1 y de encode2?
Sí, pero tu problema ahora va a ser el alineamiento. Es decir, si guardas un byte y una palabra, la palabra no va a estar alineada en una dirección múltiplo de 4 bytes y te va a dar error de alineamiento. Esto lo puedes solucionar de 2 formas: o bien convirtiendo los bytes en palabras (con el consiguiente gasto de memoria) o bien conviertes los números en bytes (con la consiguiente pérdida de rango).
Mejor elimínalo al principio, justo tras guardar la cadena en Encode. Ya que es el penúltimo carácter, debería ser algo sencillo.
Que quieres decir con perdida de rango?
Osea antes de meterlo a encode, directamente no lo meto y listo, no?
¿Qué diferencia hay entre un número de un byte y uno de una palabra?.
Corregido de la siguiente maner:
Tiene que haber más errores
Me has dicho que codificar funciona, pero creo que el almacenamiento en encode, no porque lo imprimo y no hace nada.
También he puesto el nop debajo de beq, porque tambien consume 8 al igual que jal.