コンピュータで10進数の数値を効率的に扱うための技術の一つが、パック10進数(Packed BCD)です。
特に金融や業務系アプリケーション、レガシーシステム(COBOLなど)では、今でもこの表現形式が多く利用されています。
この記事では、パック10進数とは何か、その構造と利点、他の表現方法との違い、実際の用途例を交えて、ITエンジニア向けに詳しく解説します。
パック10進数(Packed BCD)の基礎知識
パック10進数とは?
パック10進数(Packed BCD)は、「Binary-Coded Decimal(BCD)」の一種で、1バイトに2桁の10進数を詰め込む方式です。
通常のアンパックBCD(ゾーン10進数)では1バイトあたり1桁しか格納できないため、データ量を50%削減できる効率的な手法です。
仕組み:
-
各10進数字(0~9)を4ビットの2進数で表現
-
2桁の数字を1バイト(8ビット)に詰めて格納
-
最後の4ビットには符号(正負)を格納することが多い
例:
Visited 3 times, 1 visit(s) today