BCD-Zählcode
# BCD-Zählcode

Codetabelle :

| Ziffer | codiert |
| - | - |
| 0 | 0 0 0 0 0 0 0 0 0 0 |
| 1 | 0 0 0 0 0 0 0 0 0 1 |
| 2 | 0 0 0 0 0 0 0 0 1 1 |
| 3 | 0 0 0 0 0 0 0 1 1 1 |
| 4 | 0 0 0 0 0 0 1 1 1 1 |
| 5 | 0 0 0 0 0 1 1 1 1 1 |
| 6 | 0 0 0 0 1 1 1 1 1 1 |
| 7 | 0 0 0 1 1 1 1 1 1 1 |
| 8 | 0 0 1 1 1 1 1 1 1 1 |
| 9 | 0 1 1 1 1 1 1 1 1 1 |
| 10 | 1 1 1 1 1 1 1 1 1 1 |

Der BCD-Zählcode (englisch unary coding) codiert eine Dezimalziffer in binärer Darstellung; im Gegensatz zum BCD-Code hat hier jede Stelle die Wertigkeit eins.

## Vergleich BCD zu BCD-Zählcode

Als Beispiel diene der Vergleich der Kodierung der dezimalen Ziffer 5:

BCD-Code: $5_{10}=0101_{2}=0101_{[8421]}=0\cdot 8+1\cdot 4+0\cdot 2+1\cdot 1=0\cdot (2^{3})+1\cdot (2^{2})+0\cdot (2^{1})+1\cdot (2^{0})$

BCD-Zählcode: $5_{10}=0000011111_{\text{Zaehlcode}}=0\cdot 1+0\cdot 1+0\cdot 1+0\cdot 1+0\cdot 1+1\cdot 1+1\cdot 1+1\cdot 1+1\cdot 1+1\cdot 1$

## Einsatzgebiete

Der BCD-Zählcode findet seinen Einsatz hauptsächlich bei der Steuerung von Maschinen. Ähnlich wie beim Gray-Code treten hier aufgrund seiner Einschrittigkeit (Hamming-Distanz=1) keine Sprungfehler auf. Sprungfehler bedeutet, dass beim Umschalten eines Zustandes in den nächsten mehr als ein Bit geändert werden muss, dies aber in den meisten Fällen nur sequentiell ablaufen kann und deshalb ein irregulärer Zwischenzustand temporär erreicht wird, den es zu vermeiden gilt. Aus diesem Grund wird auch die sehr hohe Redundanz des Codes (6,7) in Kauf genommen.

Die unare Codierung mit fester Länge wird in neuronalen Netzen verwendet, um sicherzustellen, dass das Erlernen eines bestimmten Punktes ermöglicht, alle benachbarten (sich im Hamming-Abstand befindenden) Punkte zu erlernen.

