Сложение чисел в кодах.
При сложении чисел в кодах возникающая единица переноса из седьмого бита в знаковый бит отбрасывается (Табл.2.22).
Пример.
A = +1010101
B = +1011101
A + B = 1010101 + 1011101
Таблица 2.22. Пример сложения положительных чисел.
| Знак | Значение кода | Примечание | |||||||
| A | |||||||||
| + | B | ||||||||
| = | A + B. Единица переноса из седьмого бита в знаковый бит отбрасывается |
Рассмотрим правила записи в знаковом бите.
При сложении чисел в обратном коде возникающая единица переноса в знаковом бите прибавляется к младшему разряду суммы кодов.
Если результат арифметических действий является кодом отрицательного числа, необходимо преобразовать его в прямой код. При этом обратный код преобразуется в прямой заменой цифр во всех разрядах, кроме знакового, на противоположные (Табл.2.23 - Табл.2.24).
Пример.
A = -1010101;
B = +1011101
Таблица 2.23. Пример сложения чисел в обратном коде, с положительной суммой.
| Знак | Значение кода | Примечание | |||||||
| Обратный код для A | |||||||||
| + | Обратный код для B | ||||||||
| В знаковом бите появилась единица переноса | |||||||||
| 1+1 | Единица переноса в знаковом бите прибавлена к значению младшего бита. | ||||||||
| = | A + B = 1000 – положительная сумма |
Пример.
A = +1010101;
B = -1011101
Таблица 2.24. Пример сложения чисел в обратном коде, с отрицательной суммой.
| Знак | Значение кода | Примечание | |||||||
| Обратный код для A | |||||||||
| + | Обратный код для B | ||||||||
| Отрицательное число. Переводим в прямой код. | |||||||||
| = | A + B = -1000 – отрицательная сумма |
При сложении чисел в дополнительном коде возникающая единица переноса в знаковом бите отбрасывается.
Дополнительный код преобразуется в прямой также, как и обратный, с последующим прибавлением единицы к младшему разряду (Табл.2.25 - Табл.2.26).
Пример.
A = -1010101;
B = +1011101
Таблица 2.25. Пример сложения чисел в дополнительном коде, с положительной суммой.
| Знак | Значение кода | Примечание | |||||||
| Дополнительный код для A | |||||||||
| + | Дополнительный код для B | ||||||||
| В знаковом бите появилась единица переноса. Она отбрасывается | |||||||||
| = | A + B = 1000 – положительная сумма |
Пример.
A = +1010101;
B = -1011101
Таблица 2.26. Пример сложения чисел в дополнительном коде, с отрицательной суммой.
| Знак | Значение кода | Примечание | |||||||
| Дополнительный код для A | |||||||||
| + | Дополнительный код для B | ||||||||
| Отрицательное число. Переводим в прямой код. | |||||||||
| Единицу прибавляем к значению младшего бита. | |||||||||
| = | A + B = -1000 – отрицательная сумма |
Дата добавления: 2016-12-16; просмотров: 587;
