45.Операция сложения в обратном и дополнительном кодах:
Обратный код двоичного числа образуется по следующему правилу. Обратный код положительных чисел совпадает с их прямым кодом. Обратный код отрицательного числа содержит единицу в знаковом разряде числа, а значащие разряды числа заменяются инверсными, т. е. нули заменяются единицами, а единицы - нулями.
Очевидно, что при отсутствии переполнения возможны четыре случая сочетания знаков и модулей слагаемых.
Случай 1. A > 0, B > 0, A + B < 1.
Этот случай соответствует обычному сложению прямых кодов чисел: [A > 0]ок + [B > 0]ок = A + B.
Случай 2. A > 0, B < 0, A + B > 0 .
[A]ок + [B]ок = A + 2 + B - 2-n - предварительный результат.
Т.к. A + B > 0, то действительный результат равен A + B. Для того чтобы от предварительного результата перейти к действительному, необходима коррекция: вычесть 2 и прибавить 2-n к предварительному результату, т. е. в предварительном результате исключается 1 в разряде с весом 21, что равноценно вычитанию 2, и эту же единицу направляем в младший разряд предварительного результата, что равноценно прибавлению 2-n.
Достарыңызбен бөлісу: |