В вычислительных и электронных системах двоично-десятичное число ( BCD ) представляет собой класс двоичных кодировок десятичных чисел, где каждая цифра представлена фиксированным числом битов , обычно четырьмя или восемью. Иногда для обозначения или других указаний (например, ошибки или переполнения) используются специальные битовые комбинации .
В байт -ориентированных системах (т. е. в большинстве современных компьютеров) термин « неупакованный двоично -десятичный код » [1] обычно подразумевает полный байт для каждой цифры (часто включая знак), тогда как упакованный двоично-десятичный код обычно кодирует две цифры в одном байте, используя преимущество тот факт, что четырех бит достаточно для представления диапазона от 0 до 9. Однако точное 4-битное кодирование может варьироваться по техническим причинам (например , Excess-3 ).
Десять состояний, представляющих двоично-десятичную цифру, иногда называют тетрадами [2] [3] (поскольку полубайт , обычно необходимый для их хранения, также известен как тетрада), в то время как неиспользуемые, безразличные -состояния называются псевдотетрадами (e) . )s , [4] [5] [6] [7] [8] псевдодесятичные [3] или псевдодесятичные цифры . [9] [10] [номер 1]
Основным достоинством BCD по сравнению с двоичными позиционными системами является более точное представление и округление десятичных величин, а также простота преобразования в обычные удобочитаемые представления. Его основными недостатками являются небольшое увеличение сложности схем, необходимых для реализации базовой арифметики, а также немного менее плотная память.
BCD использовался во многих ранних десятичных компьютерах и реализован в наборе команд машин, таких как серия IBM System/360 и ее потомки, VAX от Digital Equipment Corporation , Burroughs B1700 и процессоры Motorola серии 68000 . BCD сам по себе не так широко используется, как в прошлом, и недоступен или ограничен в более новых наборах инструкций (например, ARM ; x86 в длинном режиме ). Однако десятичные числа с фиксированной и плавающей запятойформаты по-прежнему важны и продолжают использоваться в финансовых, коммерческих и промышленных вычислениях, где недопустимы тонкие преобразования и ошибки дробного округления , присущие двоичным представлениям с плавающей запятой. [11]
BCD использует тот факт, что любое десятичное число может быть представлено четырехбитным шаблоном. Наиболее очевидным способом кодирования цифр является Natural BCD (NBCD), где каждая десятичная цифра представлена соответствующим четырехбитным двоичным значением, как показано в следующей таблице. Это также называется кодировкой "8421".