Сложение целых двоичных чисел
Сложение беззнаковых чисел
При сложении чисел X и Y на основе n-разрядного АЛУ необходимо, чтобы отсутствовало переполнение, т.е. (X +Y) < 2П.
Поразрядное суммирование выполняется в соответствии с выражением:
где Ci+1 и С, — выходной и входной переносы соответственно;
Х„ Y, — одноразрядные операнды;
S; — одноразрядная сумма.
Пример. Сложить в формате байта беззнаковые числа X и Y.
Сложение чисел со знаком
Операция выполняется в дополнительном коде. При этом необходимо исходные числа предварительно представить в ДК. Результат также формируется в ДК.
Сложение в дополнительных кодах выполняется по правилу: сумма дополнительных кодов слагаемых равна дополнительному коду суммы:
если
- ? отсутствует переполнение, т.е. |Х + Y| < 2П - 1;
- ? знаковые разряды участвуют в операции наравне со значащими;
- ? единица переноса из знакового разряда суммы отбрасывается.
Пример 1.
Пример 2.
Для проверки результата необходимо перейти от дополнительного кода суммы к числовому эквиваленту: [X + У]дк -» (X + Y) на основе соответствующего Правила 1 (подраздел 4.4.3). В итоге получаем: (Х + Y) = -000010002 = -8.
При этом формируются также признаки результата, а именно
При сложении n-разрядных двоичных чисел (бит знака и п - 1 значащих цифр) возможен результат, который будет содержать п значащих цифр (ситуация, известная как переполнение). «Лишний» бит занимает позицию знака, что приводит к некорректности результата. Операционный блок должен обнаруживать факт переполнения и сигнализировать о нем. Правило обнаружения переполнения следующее: если суммируются два положительных либо два отрицательных операнда, переполнение имеет место, когда знак результата противоположен знаку слагаемых (рис. 4.63).

Рис. 4.63. Сложение с переполнением
Вычитание целых двоичных чисел Вычитание беззнаковых чисел
Поразрядное вычитание с учетом заема выполняется в соответствии с выражением
где Ci+i и Q — выходной и входной заемы соответственно;
X;, Yj — одноразрядные операнды;
Г; — одноразрядная разность.
Правило вычитания двоичных цифр следующее:
В случае если уменьшаемое X меньше вычитаемого Y, результат формируется в дополнительном коде, что и имеет место во втором примере:
Вычитание чисел со знаком
Операция выполняется в дополнительном коде. При этом необходимо исходные числа предварительно представить в ДК. Результат также формируется в ДК.
Вычитание в дополнительных кодах выполняется по правилу: разность дополнительных кодов вычитаемого и уменьшаемого равна дополнительному коду разности '.
если
- ? |Х - Y| < 2П_| (переполнение отсутствует);
- ? знаковые разряды участвуют в операции наравне со значащими;
- ? единица заема из знакового разряда разности отбрасывается.
Пример.

В большинстве операционных вычислительных устройств в целях упрощения их конструкции операция вычитания не используется. Вместо нее производится сложение дополнительных кодов уменьшаемого и вычитаемого, т.е. вычитание выполняется в соответствии с правилом: для вычитания одного числа (вычитаемого) из другого (уменьшаемого) необходимо взять дополнение вычитаемого и прибавить его к уменьшаемому. Под дополнением здесь понимается вычитаемое с противоположным знаком, представленное в дополнительном коде.
Пример.