BCDとは何か

BCDとは

 BCDは、Binary-Coded Decimalの略で、10進数を2進数で表す方法の一つです。通常、10進数の各桁は、0から9までの10種類の数字で表されますが、BCDでは、各10進数の桁を4ビットの2進数で表します。

 例えば、10進数の「123」は、BCDでは以下のように表されます。

1 -> 0001
2 -> 0010
3 -> 0011

 したがって、123はBCDでは「0001 0010 0011」となります。

 BCDは、デジタルシステムやマイクロプロセッサで数値を扱う際に、人間が理解しやすい10進数を効率的に扱うために使われます。ただし、BCDはメモリを効率的に使う2進数表記に比べて、メモリの消費が多くなるため、利用する際にはそのトレードオフを考慮する必要があります。

コード表

Binary-coded decimal – Wikipediaより引用

ASCII、EBCDICとの比較

 BCDとASCII、EBCDICでの数字の扱いを見て見ると、BCDは4bitのみ使っているのでASCIIもEBCDICも下位4bitはBCDと同じになっています。しかし文字などを扱うために拡張されて8bit(7bit)使うようになっているため上位4bitはASCIIとEBCDICは異なる値となっています。

digitBCDASCIIEBCDIC
000000011 00001111 0000
100010011 00011111 0001
200100011 00101111 0010
300110011 00111111 0011
401000011 01001111 0100
501010011 01011111 0101
601100011 01101111 0110
701110011 01111111 0111
810000011 10001111 1000
910010011 10011111 1001
BCDとASCII、EBCDICの比較

参照

Binary-coded decimal – Wikipedia(英語)

二進化十進表現 – Wikipedia(日本語)