MARS / SPIM имеют системный вызов строкового ввода (https://www.doc.ic.ac.uk/lab/secondyear/spim/node8.html). Строка - это массив символов; вам не нужно ничего "разбивать" вручную, пока вы не зациклилисьвходной буфер с lbu
. (И системный вызов возвращает длину).
Затем вы захотите проверить ввод, чтобы проверить, что это шестнадцатеричная цифра, и вычислить 4-битное целое число.
Вы не хотите хранить отдельные 4-битные значения в каком-либо массиве, сдвигайте + ИЛИ их в 32-битный регистр, чтобы получить итоговое 32-битное целое число. целое слово в массив и чтение другой строки.
(MIPS адресуется по байтам, поэтому вы можете хранить куски по 2 куска, но это не суббайтная адресация, поэтому вы не можете sb
8 отдельных кусковв 4 байта и lw
полное 32-битное слово.)