Итак, как задает вопрос, мне интересно, как я могу заменить определенный символ в MIPS?Как заменить определенный символ в MIPS?
хранить характер, я хочу, чтобы заменить в $ s0, используя
addi $s0, $v0, 0
хранить символ Я хочу, чтобы заменить его в $ s1, используя
addi $s1, $v0, 0
Теперь, мой цикл так, такие как:
la $t0, userInput
replaceLoop:
lbu $t2, 0($t0) #load our input's first char is at
addi $t0, $t0, 1 #increment address of our string.
beq $t2, $s0, replace #check if char in input, matches
beq $t2, $0, end #char we want to replace.
Итак, что нужно сделать, это сначала спросить: «Является ли персонаж, который я сейчас указываю на в userInput, соответствующем символу, который я хочу заменить? " Если да, замените команду. Вопрос в том, как мне написать замену? Я только начинаю изучать MIPS, поэтому любая помощь будет оценена.
Редактировать: Выяснил проблему; отредактировано до тех пор, пока не включится.
'sb $ s1, -1 ($ t0); b replaceLoop; ' – EOF
Не могли бы вы объяснить, что он делает и как это делается? – SomeStudent
'sb' is ** s ** tore ** b ** yte, от источника (в данном случае' $ s1') к указанному адресу. Адрес меньше, чем '$ t0', так как вы уже увеличили адрес до условной ветви. Затем вернитесь к началу цикла. – EOF