Открыть Электронные книги
Категории
Открыть Аудиокниги
Категории
Открыть Журналы
Категории
Открыть Документы
Категории
Двоичная арифметика
Правила выполнения арифметических действий над двоичными числами определяются
арифметическими действиями над одноразрядными двоичными числами.
перенос в
старший разряд
Сложение
Как и в десятичной системе счисления, сложение двоичных чисел начинается с правых
(младших) разрядов. Если результат сложения цифр МЗР обоих слагаемых не помещается
в этом же разряде результата, то происходит перенос. Цифра, переносимая в соседний
разряд слева, добавляется к его содержимому. Такая операция выполняется над всеми
разрядами слагаемых от МЗР до СЗР.
Пример.
Общая идея построения кодов такова. Код трактуется как число без знака, а диапазон
представляемых кодами чисел без знака разбивается на два поддиапазона. Один из них
представляет положительные числа, другой – отрицательные. Разбиение выполняется
таким образом, чтобы принадлежность к поддиапазону определялась максимально
просто.
Прямой код
Это обычный двоичный код, рассмотренный в разделе двоичной системы счисления. Если
двоичное число является положительным, то бит знака равен 0, если двоичное число
отрицательное, то бит знака равен 1. Цифровые разряды прямого кода содержат модуль
представляемого числа, что обеспечивает наглядность представления чисел в прямом
коде (ПК).
+28(10)=00011100(2) –28(10)=10011100(2)
0 модуль 1 модуль
a б
Сложение в прямом коде чисел, имеющих одинаковые знаки, достаточно просто: числа
складываются, и сумме присваивается знак слагаемых. Значительно более сложным
является алгебраическое сложение в прямом коде чисел с разными знаками. В этом
случае приходится определять большее по модулю число, производить вычитание
модулей и присваивать разности знак большего по модулю числа. Такую операцию
значительно проще выполнять, используя обратный и дополнительный коды.
Обратный код
В обратном коде (ОК), так же как и в прямом коде, для обозначения знака
положительного числа используется бит, равный нулю, и знака отрицательного –
единица. Обратный код отрицательного двоичного числа формируется дополнением
модуля исходного числа нулями до самого старшего разряда модуля, а затем
поразрядной заменой всех нулей числа на единицу и всех единиц на нули. В знаковом
разряде обратного кода у положительных чисел будет 0, а у отрицательных – 1.
Пример.
Пример.
Вычислить 7(10)-3(10).
Дополнительный код
Дополнительный код (ДК) строится следующим образом. Сначала формируется обратный
код (ОК), а затем к младшему разряду (МЗР) добавляют 1. При выполнении
арифметических операций положительные числа представляются в прямом коде (ПК), а
отрицательные числа – в ДК, причем обратный перевод ДК в ПК осуществляется
аналогичными операциями в той же последовательности. На рис. 2.3 рассмотрена цепь
преобразований числа из ПК в ДК и обратно в двух вариантах.
Пример.
1 1 0 1 П К (-) 1 0 1 1 Д К (-)
1 0 1 0 О К (-) 1 1 0 0 Д К (-)
+ 1 + 1
1 0 1 1 Д К (-) 1 1 0 1 П К (-)
Пример.
Пример.
Пример.
. 2 6 (1 0 ) 0 0 0 1 1 0 1 0 (2 ) - ПК
- 3 4 (1 0 ) 1 0 1 0 0 0 1 0 (2 ) - ПК
Б ы стры й перевод
1 1 0 1 1 1 1 0 (2 ) - ДК
0001 1010 П е р е н о с из зн а ко в о го р а зр я д а о тс утс т-
+
1101 1110 вует. Ч исло отриц ательное в Д К , так как
0 1 1 1 1 1 0 0 0 (2 ) знаковы й разря д равен 1.
перенос
.В ы ч и с л и м р е з у л ь т а т , п р е о б р а з о в а в е г о и з Д К в П К :
1 1 1 1 1 0 0 0 (2 ) (Д К )
1000 0111 И нве р сия в се х р а зр я д о в , кр о м е зна ко в о го
+
1
1 0 0 0 1 0 0 0 (2 ) ( П К ) = - 8 (1 0 )
Пример.
З а пиш е м р е зуль та т, пр е о б р а зо в а в е го из Д К в П К :
1 0 1 0 (2 ) (Д К )
1101 И н в е р с и я з н а ч а щ и х р а з р я д о в (к р о м е з н а к о в о го )
+ 1
1 1 1 0 (2 ) ( П К ) = - 6 (1 0 )
1. Выполнить сложение
5 8
12 -12
45 -54
22 23
-5 -2
-21 24
15 -19
35 6
25 -31
11 -24
-16 5
-9 24
-20 5
51 -49
23 -8
-42 -5
32 -34
33 -22