BCD-Code

BCD-Code
BCD-Code
Stellenzahl 4
bewertbar ja
stetig nein
Gewicht 3
Maximaldistanz 4
Hamming-Abstand 1
Redundanz 0,7
Codetabelle
Dezimal-
ziffer
BCD-
kodiert
HEX-
kodiert
0 0 0 0 0 0
1 0 0 0 1 1
2 0 0 1 0 2
3 0 0 1 1 3
4 0 1 0 0 4
5 0 1 0 1 5
6 0 1 1 0 6
7 0 1 1 1 7
8 1 0 0 0 8
9 1 0 0 1 9
Codetafel - BCD-Code (die grauen Felder zeigen die Pseudotetraden und gehören nicht mehr dazu)

BCD oder BCD-Code (von engl. Binary Coded Decimal) bezeichnet in der Informatik in der Regel den 8-4-2-1-Code. In diesem Fall kann Binary Coded Decimal mit dualkodierte Dezimalziffer übersetzt werden. Es handelt sich dann um einen numerischen Code, der jede Ziffer einer Dezimalzahl einzeln dualkodiert. Die Ziffernfolge 8-4-2-1 steht dabei für die Werte der Stellen in einer dualkodierten Dezimalziffer. In einigen Fällen wird mit BCD die allgemeine Binärkodierung einzelner Dezimalziffern bezeichnet (siehe weiter unten). Der BCD-Code sollte nicht mit dem BCD-Zählcode verwechselt werden.

Inhaltsverzeichnis

Kodierung

Um eine Zahl als BCD-Zahl darzustellen, wird jede dezimale Ziffer (0 bis 9) durch jeweils vier Bit dargestellt (0000 bis 1001, siehe Codetabelle), also in einem Halbbyte (Nibble). Die verbleibenden sechs Werte (10102 bis 11112), die mit vier Bit darstellbar sind, stellen keine gültigen BCD-Zahlen dar und werden auch als Pseudotetraden bezeichnet.

Zur Kodierung von Zahlen mit mehr als einer Dezimalziffer werden die BCD-Darstellungen der einzelnen Ziffern hintereinander gesetzt (z. B. wird die Zahl 2687 als 0010 0110 1000 0111 dargestellt). Mit einem Byte (8 Bit) können zwei Dezimalziffern dargestellt werden. Werden die 4 Bits einer BCD-Zahl jeweils in den niederwertigen Bits kodiert und die restlichen 4 Bits mit Nullen aufgefüllt, so spricht man von einer ungepackten BCD-Zahl. Werden beide Hälften eines Bytes mit je einer BCD-Zahl belegt, so nennt man dies entsprechend eine gepackte BCD-Zahl.

Die Zahl 10 ist die kleinste Zahl, die binär (0000 1010) und BCD (0001 0000) unterschiedlich kodiert wird. Da in hexadezimaler Darstellung vier Bit einer Ziffer entsprechen, sind BCD-kodierte Zahlen in hexadezimaler Schreibweise direkt visuell ablesbar. Dies gilt auch für mehrstellige Zahlen.

Die Darstellung von vorzeichenbehafteten Zahlen erfordert ein weiteres separates Bit, wenn der kodierte Bereich für negative und positive Zahlen gleich sein soll. Mit 16 Bit sind dadurch nur noch 3 Stellen kodierbar (-999 bis +999), weil für die 4. Stelle keine 4 Bit mehr zur Verfügung stehen. Kodierungen durch Pseudotetraden sind nur möglich, wenn der Darstellungsbereich asymmetrisch ist (z. B. -09,99 °C bis +99,99 °C) oder wenn die höchstwertige Ziffer maximal den Wert 7 annehmen kann (z. B. -199,9 °C bis +199,9 °C).

Anwendung

BCD-Arithmetik ist an sich für heutige Computer überflüssig. Sie ist ein Relikt aus Zeiten, in denen man den Aufwand der Wandlung zwischen interner Repräsentation und externer Darstellung gering halten wollte. Die fehlenden Rundungsfehler der Darstellung von Dezimalzahlen kann man durch Gleitkommazahlen mit Basis-10-Exponent oder durch Festkommazahlen mit Basis-10-Exponent genauso erreichen. Die Verarbeitungsgeschwindigkeit dieser Darstellung ist für heutige Prozessoren um 2 bis 2 1/2 Größenordnungen höher als die der BCD-Darstellung. Die Zahl wird dazu nicht in der Form M * 2E, sondern in der Form M * 10E gespeichert. M ist die (ganzzahlige) Mantisse und E ist der Exponent. Beide werden binär abgespeichert, für kaufmännische Probleme ist E ohnehin meist fest und beträgt -2 (die meisten Rechnungen) oder -4 (Telefonrechnungen).

In Rechenwerken wird der BCD-Code wenig eingesetzt, weil Schaltungen, die mit BCD-Zahlen rechnen, erheblich mehr Schaltglieder (Gatter) benötigen als Schaltungen, die mit Dualzahlen arbeiten. Der Code findet jedoch gelegentlich in Steuerungssystemen, zum Beispiel zur Ansteuerung von LCD- oder LED-Zahlendisplays, sowie dem Versenden von SMS-Nachrichten im sogenannten PDU-Format, Anwendung.

Heutige Prozessoren haben entweder keinerlei Unterstützung von BCD-Arithmetik mehr oder diese ist auf dem Stand von 8-Bit-Prozessoren stehengeblieben (d. h. es werden 8-Bit-Addition und 8-Bit-Subtraktion unterstützt). Es gab aber Prozessoren mit umfangreicher Unterstützung von BCD-Arithmetik (z. B. der Sharp SC61860 im Sharp PC-1401). Heutige Intelprozessoren besitzen im 64-Bit-Modus keinen einzigen Befehl zur BCD-Arithmetik mehr. Es gibt 2 Befehle zur schnellen Wandlung von 80-Bit-BCD in 80-Bit-double extended. Die eigentlichen Berechnungen werden immer im Binärsystem durchgeführt.

Des Weiteren wird der BCD-Code benutzt, um die Uhrzeit im DCF77-Signal zu kodieren. Digitaluhren laufen im Innern im BCD-Code. Gegenüber Binärzählern sind keine weiteren Gatter notwendig. Die Umwandlung des Zählerstandes mittels LC-Display ist aber deutlich einfacher. Einige AD-Umsetzer liefern ihr Messergebnis direkt als BCD-Zahl ab.

Andere BCD-Codes

Es ist zu beachten, dass der BCD-Code auch in anderen Formaten verwendet wird. Beispielsweise ist noch der 1-aus-10-Code, 2-aus-5-Code, 5-4-2-1-Code, sowie der 2-4-2-1-Code (auch Aiken-Code), Exzess-3-Code sowie der Gray-Code gebräuchlich. Diese unterscheiden sich, wie zum Teil in der Bezeichnung erkennbar ist, in der Stellenwertigkeit der einzelnen Bits. Der 1-aus-10-Code und der 2-aus-5-Code dienen in erster Linie zur Fehleranalyse. Mit Hilfe der Chen-Ho-Kodierung oder der Densely-Packed-Decimal-Kodierung lassen sich 3 Dezimalziffern durch 10 Bits anstelle von 12 Bits kodieren. Dies bietet eine 20% bessere Effizienz, weil es bei 1024 Möglichkeiten nur 24 Pseudotetraden gibt.

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем сделать НИР

Schlagen Sie auch in anderen Wörterbüchern nach:

  • BCD-Code — 〈[ ko:d] m. 6; Abk. für engl.〉 Binary Coded Decimals Code (binär kodierter Dezimalzahlencode), ein in der EDV verwendeter 4 Bit Code mit der Stellenfolge 8 4 2 1 * * * BCD Code   [ koːt, englisch biːsiː diːkəʊd; BCD Abkürzung für englisch binary… …   Universal-Lexikon

  • BCD-Code — [be:tse: de:ko:t, engl. bi:si: di:koud] der; s, s <zu BCD (Abk. für engl. binary coded decimals »binär kodizierte Dezimalzahlen«) u. ↑Code> einer der am häufigsten verwendeten Codes zur Darstellung von Dezimalzahlen in… …   Das große Fremdwörterbuch

  • BCD-Code — 〈[ ko:d] m.; Gen.: s, Pl.: s; EDV; Abk. für engl.〉 Binary Coded Decimals Code (binär kodierter Dezimalzahlencode), ein in der EDV verwendeter 4 Bit Code mit der Stellenfolge 8421 …   Lexikalische Deutsches Wörterbuch

  • Code Gray — Système binaire Pour les articles homonymes, voir Binaire. Exemple d informations binaires Le système binaire est un système de numération …   Wikipédia en Français

  • Code binaire — Système binaire Pour les articles homonymes, voir Binaire. Exemple d informations binaires Le système binaire est un système de numération …   Wikipédia en Français

  • BCD-Zählcode — Eigenschaften Stellenzahl: 10 Bewertbar: ja Gewicht: 1...10 Minimaldistanz: 1 Maximaldistanz: 9 Hamming Distanz 1 Stetig: ja …   Deutsch Wikipedia

  • BCD —   [Abk. für Binary Coded Decimal, dt. »binär kodierter Dezimalwert«], ein nach DIN 44 300 genormtes Verfahren zur Kodierung von Dezimalzahlen. Jede Stelle einer Dezimalzahl wird separat als Binärzahl (Zahl im Zweiersystem) dargestellt, wobei… …   Universal-Lexikon

  • Bcd — Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom. {{{image}}}   Sigles d une seule lettre   Sigles de deux lettres > Sigles de trois lettres …   Wikipédia en Français

  • code, binary coded decimal —    (BCD)    A compression scheme in which two binary bits replace the three zone bits and four binary bits replace the nine data bits …   IT glossary of terms, acronyms and abbreviations

  • BCD (6-bit) — Le code BCD (6 bit) (Binary Coded Decimal), aussi connu sous le nom BCD pour 6 bit alphanumérique, est un code standard de 6 bits utilisé par les grands ordinateurs : Borroughs, Bull, CDC, IBM, GEC, NCR, Siemens, Sperry Univac, etc. IBM a… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”