| Zeile 1: | Zeile 1: | ||
| − | + | '''Binary Coded Decimal''' (kurz '''BCD''') 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 (4 Bit), gespeichert. | |
| − | |||
Dies kann man mit der folgenden Tabelle verdeutlichen: | Dies kann man mit der folgenden Tabelle verdeutlichen: | ||
| Zeile 51: | Zeile 50: | ||
==gepackte BCD Zahlen== | ==gepackte BCD Zahlen== | ||
Im gepackten BCD-Format befinden sich die Nibble der BCD-Zahl direkt hinter einander. | Im gepackten BCD-Format befinden sich die Nibble der BCD-Zahl direkt hinter einander. | ||
| + | |||
Beispiel: | Beispiel: | ||
Dezimal : 42 | Dezimal : 42 | ||
| Zeile 56: | Zeile 56: | ||
==ungepackte BCD Zahlen== | ==ungepackte BCD Zahlen== | ||
| − | Im ungepackten BCD-Format steht jedem BCD- | + | Im ungepackten BCD-Format steht jedem BCD-Nibble ein leeres Nibble 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: | Beispiel: | ||
Dezimal : 42 | Dezimal : 42 | ||
Ungepacktes BCD-Format: 0000 0100b (0x04) 0000 0010b (0x02) | Ungepacktes BCD-Format: 0000 0100b (0x04) 0000 0010b (0x02) | ||
| − | Der Vorteil hierbei ist z.B. dass durch eine einfache | + | 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 == | == Weblinks == | ||