BCD 【Binary-Coded Decimal】 2進化10進数 / 二進化十進数
概要
BCD(Binary-Coded Decimal)とは、10進数の値を2進数で表現する方式の一つで、10進数の一つの数字を4桁の2進数に対応させたもの。米IBM社がメインフレームで用いていた方式が広まったもので、これをアルファベットや記号を含む文字コードに拡張した符号は「EBCDIC」として知られる。BCDでは10進数の「0」から「9」の数字を2進数の「0000」から「1001」に対応させ、これを連ねて数値を表現する。4桁の2進数は本来0から15までの10進数を表現できるが、10(1010)から15(1111)までは使わない。
BCDの拡張仕様に「パック10進数」と「ゾーン10進数」(アンパック10進数)がある。前者は1バイト(8ビット)のデータを4ビットずつに区切って2桁の10進数を表現する方式で、最後に値の正負を表す特殊なコード(機種によるが多くの場合は12が正、13が負)が付加される。1バイトに2桁ずつ格納でき効率的である。
ゾーン10進数は1バイトで10進数の1桁を表現する方式で、前半4ビットを文字であるか数値であるかを識別する「ゾーン部」、後半4ビットを値の表現に用いる。最後に正負の符号コードを付加する。記憶容量の利用効率は低いが文字と数字を同じ符号体系で取り扱うことできる。
(2022.7.21更新)