Дополнительный код
Дополнительный код обладает всеми достоинствами обратного и уст- раняет его главный недостаток – неоднозначность кодирования нуля. Дополнительный n-разрядный двоичный код представляет собой код, образованный по правилу:
(А2)доп =
А2 при А2 > 0
2n - |A2| при А2<0
Операция 2n – |A2| называется операцией дополнения до следующего за большим числом без знака для данной разрядной сетки. Другими слова- ми, кодирование числа можно выполнить следующим образом:
· Для положительного числа в n-разрядную сетку занести его двоичное представление.
· Для отрицательного числа в n-разрядную сетку занести разность ме- жду следующим
за большим числом без знака и модулем кодируемого числа.
Дополнение при использовании дополнительного кода больше по значе- нию на 1 от дополнения при использовании обратного кода:
( 2n – 1 ) - |A2| + 1 = 2n - |A2|
Дополнение при обратном коде
Дополнение при дополнительном ко-
де
Cледствие: дополнительный код отрицательного числа может быть по-
лучен из его обратного кода путем прибавления единицы в младший разряд.
Пример: Определить дополнительный код числа А[16] = -1D8 при n=16.
Кодируется отрицательное число, следовательно, необходимо вычислить дополнение и использовать его в качестве кода.
v Двоичное кодирование. 1. |А[16]| = 1D8
2. |А[2]| = 111011000
2. |А[2]| = 0000 0001 1101 1000 (Это модуль кодируемого числа в разрядной сетке) 4. (А[2])обр= 1111 1110 0010 0111 (Это обратный код)
+ 1
(А[2])доп= 1111 1110 0010 1000 (Это дополнительный код)
F E 2 8[16]
v Шестнадцатеричное кодирование
1. |
| А[16]| |
= 1D8 |
||
2. (А[16])обр |
F F F F - 0 1 D 8 |
(Это максимальное число без знака) (Это модуль кодируемого числа в разрядной сетке) |
||
|
F E 2 7 |
(Это обратный код) |
||
+ 1
(А[16])доп= F E 2 8 (Это дополнительный код)
v Восьмеричное кодирование
1. | А[8]| = 730
2. (А[8])обр = 1 7 7 7 7 7 (Это максимальное число без знака)
- 0 0 0 7 3 0 (Это модуль кодируемого числа в разрядной сетке)
1 7 7 0 4 7 (Это обратный код)
+ 1
(А[8])доп= 1 7 7 0 5 0 (Это дополнительный код)
Дополнительный код обеспечивает однозначное представление нуля:
+0 при n=5
-0 при n=5
+ 1
Диапазон представимых чисел в дополнительном коде: A+max = 2n-1 – 1; A-min = -2n-1
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.