TOP / BCD(Binary Coded Decimal)とは

BCD(Binary Coded Decimal)とは

BCDとは、Binary Coded Decimalの略名で日本語では2進化10進数の事である。 通常アセンブラでは16進数の0x0-0xfまでを利用するが、2進法と10進法を対にして 利用する方式で、10進数の0-9までの0x0-0x9までを利用するデータの種類である。

10進法と2進法の対応表

0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001

アンパック方式

10進数1桁を1バイトであらわす。

たとえば5239をアンパックBCDであらわすと以下のようになる。アンパック形式の場合下位4bitのみで
10進数を表現し、上位4bitは任意の数値でパディングする。

0000 0101 0000 0010 0000 0011 0000 1001

パック方式

10進数2桁を1バイトであらわす。先ほどの5239をパック形式BCDで表すと以下になる。

0101 0010 0011 1001

いつ利用するか?

昔はCOBOLでよく使われていたらしいがJavaなど最近の言語では直接利用することは少なく 情報処理試験の問題として出題されることが多い。



イバラキングへのリンク Get Firefox Valid XHTML 1.1 Apple Darwinへのリンク