Двоично-десятичный код, BCD

Двоично-десятичный код, BCD

8421-BCD  — форма записи рациональных чисел, когда каждый десятичный разряд числа записывается в виде его четырёхбитного кода(двоичного).
Например, десятичное число 31110 будет записано в  в двоичном коде как 1 0011 01112, а в двоично-десятичном коде как 0011 0001 0001BCD.

При помощи четырёх бит можно закодировать шестнадцать цифр. Из них используются 10. Остальные 6 комбинаций в двоично-десятичном коде являются запрещенными.

Двоично-десятичный код также применяется в телефонной связи. В этом случае кроме десятичных цифр кодируются символы '*' или '#', или любые другие. Для записи этих символов в двоично-десятичном коде используются запрещенные комбинации

 

Преимущества:

·         Для дробных чисел при переводе в человекочитаемый десятичный формат и наоборот не теряется точность.
·         Упрощены умножение и деление на 10, а также округление.
По этим причинам двоично-десятичный формат применяется в калькуляторах — калькулятор в простейших арифметических операциях должен выводить в точности такой же результат, какой подсчитает человек на бумаге.

Недостатки:

Требует больше памяти.

·         Усложнены арифметические операции. Так как в 8421-BCD используются только 10 возможных комбинаций 4-х битового поля вместо 16, существуют запрещённые комбинации битов: 1010(1010), 1011(1110), 1100(1210), 1101(1310), 1110(1410) и 1111(1510).
Поэтому, при сложении и вычитании чисел формата 8421-BCD действуют следующие правила:
1.     При сложении двоично-десятичных чисел каждый раз, когда происходит перенос бита в старший полубайт, необходимо к полубайту, от которого произошёл перенос, добавить корректирующее значение 0110 (= 610 = 1610 — 1010: разница количеств комбинаций полубайта и используемых значений).
2.     При сложении двоично-десятичных чисел каждый раз, когда встречается недопустимая для полубайта комбинация (число, большее 9), необходимо к каждой недопустимой комбинации добавить корректирующее значение 0110 с разрешением переноса в старшие полубайты.
3.     При вычитании двоично-десятичных чисел, для каждого полубайта, получившего заём из старшего полубайта, необходимо провести коррекцию, отняв значение 0110.

Комментариев нет:

Отправить комментарий

На данный момент системы счисления играют огромную роль в нашей жизни. Они используются в ЭВМ, в нашей повседневной жизни и многих других...