Я использую PCSpim, и у меня есть проблема У меня есть массив символов для вставки значения шестнадцатеричного числа, назовите его HEXARRAY.Хранить байт int в MIPS
HEXARRAY: .byte '0', '0', '0', '0', '0', '0', '0', '0'.
, и я хочу, чтобы вставить целое, делая
С.Б. $ t0, HEXARRAY ($ t1)
где $ t0 является ИНТ Я хочу, позволяет сказать, 8. и $ t1 является 8, последний байт в массиве.
int имеет 4 байта в MIPS, как я могу вставить int в 1 байт?
Можете ли вы быть яснее? Что такое 'sb $ t0, HEXARRAY ($ t1)', который не работает? –
sb хранит только байты, что означает 1 байт, а целое - 4 байта, как я могу поместиться в 4 байта в этот 1 байт, где для моего целого требуется только 1 байт (между 127 и -128) – JAngara
Биты (и так являются байтами) являются единицей измерения. Просить 4 байта в 1 байт, как просить 4 литров воды в 1 литр воды. Вы не можете этого сделать, не отбросив часть этого. То же самое с вашим вопросом, поэтому я попросил разъяснения. 'sb' хранит только младший байт (отбрасывает остальные 3 байта), поэтому, если любое возможное число в' $ t0' находится в пределах 0-255 или -128-127 (которые являются диапазонами, для которых требуется только 1 байт), тогда вы может использовать 'sb' без проблем. Если это не так, вы должны сказать, использовать ли «воду» для выброса. –