Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
учебное пособие по А и ЛО ВТ.docx
Скачиваний:
12
Добавлен:
05.12.2018
Размер:
1.97 Mб
Скачать

Двоично-десятичные коды с избытком 3

Иначе говоря, это коды чисел из системы ( 8421 + 3 ). В этом коде каждая десятичная цифра ai представляется в виде двоичного эквивалента суммы ai+3. В отличие от кода 8421 код 8421+3 – самодополняющийся, но не имеющий свойства взвешенности. Применяется наиболее часто в десятичной арифметике, так как при выполнении двоичного суммирования легко выделить десятичный перенос.

Возможны следующие два случая сложения чисел в коде 8421+3:

  1. a + b ≤ 9 ; [ ( a + 3 ) + ( b + 3 ) ] ≤ 15.

И следовательно, в тетраде суммы будет лишних 6 единиц. Чтобы тетрада суммы осталась тоже с избытком 3, нужно вычесть 3.

  1. a + b ≥ 10; [ ( a + 3 ) + ( b + 3 ) ] ≥ 16.

Здесь во всех случаях возникает шестнадцатеричный перенос, вместе с которым тетраду суммы покинут и шесть избыточных единиц, чтобы тетрада суммы осталась с избытком 3, надо добавить 3.

Если складываются числа с разными знаками, то избыток в тетраде суммы будет равен нулю и суммирование, таким образом, сводится к правилам суммирования в коде 8421.

Пример: Выполнить сложение чисел 169 и 378 в коде 8421+3.

0.0100 1001 1100

A = 169 0.0110 1010 1011

B = 378 0.1011 0100 0111

A + B = 547 0011 0011 0011

0.1000 0111 1010

8 7 10

Пример : Выполнить вычитание из числа 378 числа 169 в коде 8421+3.

A = 378 0.0110 1010 1011

B = 169 1.1011 0110 0011

A - B = 209 1 0.0010 0000 1110

циклический перенос1

0.0010 0000 1111

+ 0011 -0011 -0011

0.0101 0011 1100

5 3 12

Пример: Выполнить вычитание из числа 169 числа 378 в коде 8421+3.

A = 169 0.0100 1001 1100

B = 378 1.1001 0101 0100

A - B = -209 1.1101 1111 0000

-0011 -0011 +1100

1.1010 1100 0011

- 0101 0011 1100

5 3 12

Правило: если из тетрады был перенос, надо добавить +0011, если переноса не было, – 0011 (добавить 1100), независимо от знака слагаемых и знака суммы.

Код с избытком 6 для одного из слагаемых

При сложении чисел с одинаковыми знаками неважно, к какому из слагаемых добавить 0110. Причем это равносильно добавлению 0011 к каждому слагаемому.

При суммировании чисел в коде с избытком 6 коррекция может понадобиться только в случае, когда сумма меньше 16. В остальных случаях (сумма больше 16) возникает перенос удаляющий, из тетрады 6 лишних единиц, и коррекция результата не требуется.

Результат должен быть без избытка.

Пример :

A = 169 0.0111 1100 1111

B = 378 0.0011 0111 1000

A + B = 547 0.1001 0100 0111

0110 .

0.0101 0100 0111

Суммирование чисел с разными знаками производится в коде 8421, но в сущности тоже с избытком 6.