Вычитание чисел IEEE 754 одинарной точности
Проблема в (-1.100 х 2^5) + (1.1001 х 2^7). После сдвига, чтобы получить их одинаковую величину, вы получите
1.10010 x 2^7
-0.01100 x 2^7
Моя проблема с переноской. Я не уверен, правильно ли я это делаю. Ответ, который я получил, был 0,01110 x 2^7, это правильно? Кроме того, при вычитании, как я узнаю, получу ли я отрицательное значение? Если ответ, который я имею выше, является правильным, будет ли правильное представление в IEEE одинарной точности
0 10000110 011100000000000000000000
1 ответ
Проверьте свою работу, добавив разницу (результат) к вычитаемому (число после знака минус). Если вы получили minuend (число перед знаком минус), вы сделали это правильно.
11 // the carries from the addition
0.01100 // the difference you computed
+ 0.01110 // the subtrahend
---------
0.11010 // should be the minuend, if you computed the difference correctly
Это не наименьшее (1.10010), поэтому вы вычли неправильно.