47.Особенности сложения чисел в обратном и дополнительном кодах
При сложении чисел в дополнительном коде возникающая единица переноса в знаковом разряде отбрасывается. При сложении чисел в обратном коде возникающая единица переноса в знаковом разряде прибавляется к младшему разряду суммы кодов. Если результат арифметических действий является кодом отрицательного числа, необходимо преобразовать его в прямой код. При этом обратный код преобразуется в прямой заменой цифр во всех разрядах, кроме знакового на противоположные.
Итак, использование обратного кода в операциях алгебраического сложения/вычитания позволяет:
использовать только действие арифметического сложения двоичных кодов;
получать истинное значение знака результата, выполняя над знаковыми разрядами операндов те же действия, что и над разрядами чисел;
обнаруживать переполнение разрядной сетки.
Еще одним достоинством применения обратного кода можно считать простоту взаимного преобразования прямого и обратного кода.
Дополнительный код преобразуется в прямой так же, как и обратный, с последующим прибавлением единицы к младшему разряду. Достоинства операций суммирования чисел в обратном и дополнительном кодах:
обработка знаковых и цифровых разрядов чисел осуществляется по одинаковым правилам, и при этом автоматически получается правильный знак результата;
исключена операция прямого вычитания.
Недостаток: невозможно фиксировать переполнение.
Достарыңызбен бөлісу: |