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進数表記に比べて、メモリの消費が多くなるため、利用する際にはそのトレードオフを考慮する必要があります。
コード表
ASCII、EBCDICとの比較
BCDとASCII、EBCDICでの数字の扱いを見て見ると、BCDは4bitのみ使っているのでASCIIもEBCDICも下位4bitはBCDと同じになっています。しかし文字などを扱うために拡張されて8bit(7bit)使うようになっているため上位4bitはASCIIとEBCDICは異なる値となっています。
digit | BCD | ASCII | EBCDIC |
0 | 0000 | 0011 0000 | 1111 0000 |
1 | 0001 | 0011 0001 | 1111 0001 |
2 | 0010 | 0011 0010 | 1111 0010 |
3 | 0011 | 0011 0011 | 1111 0011 |
4 | 0100 | 0011 0100 | 1111 0100 |
5 | 0101 | 0011 0101 | 1111 0101 |
6 | 0110 | 0011 0110 | 1111 0110 |
7 | 0111 | 0011 0111 | 1111 0111 |
8 | 1000 | 0011 1000 | 1111 1000 |
9 | 1001 | 0011 1001 | 1111 1001 |
参照
Binary-coded decimal – Wikipedia(英語)
二進化十進表現 – Wikipedia(日本語)