Я ищу метод для преобразования массива символов в строку.В настоящее время у меня есть этот массив символов:
hexVal: .word 4 {contains '0', 'x', '8', '0'}
И я хочу использовать этот массив, чтобы превратить какой-либо регистр в строку «0x80».Сначала я попробовал инструкцию загрузки слова, чтобы взять четыре байта и сохранить их в регистре:
lw $t0, hexVal
Но это не сработало так хорошо, как я надеялся.Печать полученного регистра $ t0 дает выходной сигнал 0. Я могу получить доступ к различным символам, используя индексацию, и распечатать их следующим образом:
addi $t1, $zero, 0 # use $t1 as our index, starting at 0
while:
beq $t1, 3, exit # if $t1 = 3, exit
lb $t0, hexVal($t1) # grab the byte at the index
li $v0, 11 # 11 = character print
la $a0, $t0
syscall # print the character at $t0
addi $t1, $t1, 1 # increment index by 1
j while
exit:
# do something else
Это выдаст «0x80».Тем не менее, для программы, над которой я работаю, мне нужно иметь возможность хранить строку ASCII "0x80" в регистре.Можно ли это сделать?