Для обнаружения переполнения разрядной сетки знаковый разряд дублируется. Такое представление чисел называется модифицированным дополнительным кодом:
1) 65 00 100 0001
+ 97+ 00 110 0001
162 01 010 0010
Разные цифры в знаковых разрядах свидетельствуют о том, что произошло переполнение.
2) -65 11 011 1111
+ -97+ 11 001 1111
-162 10 101 1110
Переполнение!
Для проверки знаковых разрядов используют результат операции “исключающее ИЛИ”, которая дает значение 1 только если операнды различны.
Сравнение рассмотренных форм кодирования целых чисел со знаком показывает:
на преобразование отрицательного числа в обратный код компьютер затрачивает меньше времени, чем на преобразование в дополнительный код, так как последнее состоит из двух шагов — образования обратного кода и прибавления единицы к его младшему разряду;
время выполнения сложения для дополнительных кодов чисел меньше, чем для их обратных кодов, потому что в таком сложении нет переноса единицы из знакового разряда в младший разряд результата, поэтому для ускорения выполнения расчетов используют дополнительный код.