Дополнительный код

  • docx
  • 18.11.2021
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала Л2-002057.docx

Дополнительный код

Дополнительный код обладает всеми достоинствами обратного и уст- раняет его главный недостаток – неоднозначность кодирования нуля. Дополнительный 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	0	0	0	0
1	1	1	1	1

Дополнительный код обеспечивает однозначное представление нуля:

+0                               при n=5

-0                                при n=5

0 0 0    0    0+                   1

 

Диапазон представимых чисел в дополнительном коде: A+max = 2n-1 1; A-min = -2n-1