Я использую что-то вроде SPIMS или MARS с функциями системного вызова.
Я читаю в строке (и она работает, потому что я могу ее распечатать) следующим образом:
li $v0, 8
la $a0, string
li $a1, 256
syscall
Однако у меня проблема с доступом к одному символу строки. Поэтому, если я хочу получить доступ к первому символу и распечатать его, я пытаюсь это:
la $t0, string
lb $a0, ($t0)
li $v0, 4
sys call
Если я попробую что-то вроде этого:
la $a0, string
li $v0, 4
syscall
Это печатает всю строку, так как строка указывает на всю строку.
Если я попробую что-то вроде:
la $a0, string
lb $a0, ($t0)
li $v0, 4
syscall
Это выводит меня за пределы допустимой ошибки. Хотя я не понимаю, почему - символ не является длинным байтом, и это просто загружает первый байт из строки в $ a0?
Спасибо