Binary Coded Decimal

Aus Lowlevel

Wechseln zu: Navigation, Suche

BCD (Binary Coded Decimal) ist ein Format zur binären Kodierung von Dezimalzahlen. Man unterscheidet zwischen gepackten- und ungepackten-BCD Zahlen.

Im BCD Format werden die einzelnen Dezimalstellen einer Zahl in einem Byte, bzw. in gepackter Form in einem Nibble(4Bit), gespeichert.
Dies kann man mit der folgenden Tabelle verdeutlichen:

Dezimal BCD gepackt BCD ungepackt
0 0000 00000000
1 0001 00000001
2 0010 00000010
3 0011 00000011
4 0100 00000100
5 0101 00000101
6 0110 00000110
7 0111 00000111
8 1000 00001000
9 1001 00001001


gepackte BCD Zahlen

Im gepackten BCD-Format befinden sich die Nibble der BCD-Zahl direkt hinter einander. Beispiel:

Dezimal  : 42
Gepacktes BCD-Format: 0100 0010b (0x42)

ungepackte BCD Zahlen

Im ungepackten BCD-Format steht jedem BCD-Nibbel ein leeres Nibbel voran, so das eine Dezimalstelle in einem Byte gespeichert wird. Dies wurde zur einfacheren Handhabung gemacht, da in den Systemen für die BCD entwickelt wurde ein Byte die kleinste Dateneinheit war, die man direkt ansprechen konnte. Beispiel:

 Dezimal  : 42
 Ungepacktes BCD-Format: 0000 0100b (0x04)  0000 0010b (0x02)

Der Vorteil hierbei ist z.B. dass durch eine einfache or-Verknüpfung mit 0x30 eine BCD-Ziffer in das passende ASCII-Zeichen umgewandelt werden kann.

Weblinks

Persönliche Werkzeuge