Главное меню

Выполнение операций сложения, вычитания в двоичном коде

Сложение чисел, представленных в двоичном коде, выполняется поразрядно, начиная с младшего разряда. В результате сложения двух первых кодов слагаемых Xo, Yo получается первый разряд суммы Sо и код переноса Pо в следующий разряд. В следующих разрядах код Si будет определяться с учетом переноса из соседнего младшего разряда:

7 0111 5 0101

+ ── + ─────

12 1100

Операция Вычитания в ЭВМ выполняется, так же как и сложение, но при этом отрицательные числа представляются в дополнительном или обратном коде. Смысл перевода отрицательных чисел из прямого в дополнительный и обратный коды поясним на примере с десятичными числами.

Допустим, требуется сложить числа X1=76 и X2=-58. Заменим код отрицательного слагаемого X2 его дополнением до 100, так чтобы [X2] доп=100+X2=42. Сложив числа X1+[X2] доп получим: Y=X1+[X2] доп=76+42=118.

Отбрасывая 1 старшего разряда получим искомый результат 18. Равенство полученного результата истинному объясняется тем, что при формировании дополнительного кода к X2 мы прибавляли 100, а из результата вычитали 100 отбрасыванием старшего разряда.

Y=X1+[X2] доп-100=X1+[X2+100] – 100=76+[-58+100] – 100=18.

При записи двоичного числа в прямом коде в знаковом разряде ставится его знак (0 – плюс, 1 – минус), а само число записывается в естественной форме:

X=13 [X] пр=01101

10 2

X=-13 [X] пр=11101

10 2

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

[-14] доп=[-01110] доп=[10001+1]=10010

Кроме дополнительного кода для представления отрицательных чисел используется обратный код. В этом случае в знаковом разряде записывается 1, а в остальных разрядах цифры заменяются на взаимно обратные

[-14] обр=[-01110] обр=10001

При выполнении арифметических операций с отрицательными числами производится поразрядное сложение слагаемых, начиная с младшего и кончая знаковым разрядом. Если используется дополнительный код, то возможная единица переноса из знакового, разряда отбрасывается, при использовании обратного кода единица переноса знакового разряда суммируется с младшим разрядом полученной суммы. Результат вычисления получается в том коде, в каком были представлены слагаемые. Положительные числа в прямом, обратном и дополнительном кодах имеют одну и ту же форму записи.

Другое по теме:

Анализ деятельности Международного союза электросвязи в сфере телекоммуникаций
Международный союз электросвязи (МСЭ) — международная организация, в рамках которой правительствами и частным сектором координируются глобальные сети и услуги электросвязи. Основанный в Париже в 1865 г. как Международный телеграфный союз, М ...

Copyright © www.techproof.ru