#mips #cpu-architecture
Вопрос:
Я пытаюсь решить следующую проблему:
Регистр $4 содержит 32-разрядное представление IEEE 754 -31,5, каков конечный результат, помещенный в $5 с помощью следующих инструкций:
sll $5,$4,1
srl $5,$5,24
addi $5,$5,-127
$4 = 11000001 11111100 00000000 00000000 after performing sll $5,$4,1 $5 = 10000011 11111000 00000000 00000000 after performing srl $5,$5,24 $5 = 00000000 00000000 00000000 10000011 -127 = 11111111 11111111 11111111 10000001
Насколько я понимаю, addi возьмет 16 бит немедленного в данном случае 11111111 10000001 и добавит его к значению регистра 5 долларов. Будет ли конечное значение 11111111 00000100 или 00000000 00000100 после добавления обоих значений?
Комментарии:
1. Выполните арифметические действия в десятичной системе счисления и преобразуйте этот результат в двоичный. (В этом случае получится то же самое, так как переполнения нет.)
2. Я пробовал что-то в этом роде. Я знаю, что значение регистра $5 до того, как addi будет равно 131, конечный результат в десятичной системе счисления должен быть 4.
3. Если вы хотите понять двоичную операцию, посмотрите, как выполнение с
1 1
верхнего нижнего байта распространяется на / через все единицы в битах над ним (где$5
были нули).