> bcd | décimal | binaire <
// BCD - décimal codé binaire pour une arithmétique décimale précise
Précision décimale
Préserve la précision décimale et évite les erreurs d’arrondi liées à la représentation binaire.
Encodage par nibble
Chaque chiffre décimal est encodé exactement sur 4 bits (un nibble).
Formats multiples
Prise en charge des formats 8421, 2421, 5421, Excess-3 et Gray BCD.
>> informations techniques
Comment fonctionne le BCD:
Le BCD encode chaque chiffre décimal (0–9) en 4 bits binaires. Les différents formats BCD utilisent des pondérations de bits différentes : 8421 (standard), 2421 (auto-complémentaire), 5421 (bi-quinaire), Excess-3 (ajoute 3 à chaque chiffre) et Gray BCD (minimise les changements de bits). Le BCD empaqueté stocke deux chiffres par octet pour plus d’efficacité.
Exemple de formats BCD:
Décimal : 9 5 3
8421 BCD : 1001 0101 0011
2421 BCD : 1111 1011 0011
5421 BCD : 1100 1000 0011
Excess-3 : 1100 1000 0110
Gray BCD : 1101 0111 0010
Empaqueté : 10010101 00110000
(95) (30)
Pourquoi utiliser le BCD:
- >Calculs financiers nécessitant une représentation décimale exacte
- >Afficheurs numériques et décodeurs sept segments
- >Circuits d’horloge temps réel
- >Calculatrices et circuits de calcul
- >Automates programmables (PLC) et systèmes de contrôle industriel
>> foire aux questions
Qu’est-ce que le BCD ?
Le BCD (Binary-Coded Decimal) est un encodage binaire des nombres décimaux dans lequel chaque chiffre décimal est représenté par son équivalent binaire sur 4 bits. Il est utilisé lorsque la précision décimale est essentielle.
Pourquoi utiliser le BCD plutôt que le binaire pur ?
Le BCD permet d’éviter les erreurs d’arrondi dans les calculs décimaux et simplifie la conversion vers des affichages décimaux. Il est idéal pour les applications financières où des résultats strictement exacts sont requis.
Qu’est-ce que le BCD empaqueté ?
Le BCD empaqueté stocke deux chiffres décimaux dans un seul octet (8 bits), chaque nibble représentant un chiffre. Il est plus économe en espace que le BCD non empaqueté, qui utilise un octet complet par chiffre.
Quels sont les principaux formats BCD ?
Les formats BCD les plus courants sont : 8421 (pondéré standard), 2421 (auto-complémentaire), 5421 (bi-quinaire), Excess-3 (chaque chiffre +3) et Gray BCD (minimise les changements de bits entre valeurs successives).
// Aide-mémoire
| Dec | 8421 | 2421 | Excess-3 |
|---|---|---|---|
| 0 | 0000 | 0000 | 0011 |
| 1 | 0001 | 0001 | 0100 |
| 2 | 0010 | 0010 | 0101 |
| 3 | 0011 | 0011 | 0110 |
| 4 | 0100 | 0100 | 0111 |
| 5 | 0101 | 1011 | 1000 |
| 6 | 0110 | 1100 | 1001 |
| 7 | 0111 | 1101 | 1010 |
| 8 | 1000 | 1110 | 1011 |
| 9 | 1001 | 1111 | 1100 |
// Exemples de code
Decimal 25 BCD 0010 0101 (packed: 0x25)
Binary 0001 1001 (0x19)
Decimal 1234 BCD 0001 0010 0011 0100 (2 bytes, packed)
Overhead 4 bits per digit vs log2(10) = 3.32 bits -> ~20% larger
Add 0x19 + 0x28 = 0x41 -> +6 correction per nibble > 9 -> 0x47
>> Autres questions
Q : Qu’est-ce que le BCD et en quoi diffère-t-il du binaire ?
R : En BCD, chaque chiffre décimal est codé séparément sur 4 bits. 25 devient 0010 0101, alors que le binaire pur donne 11001. Les valeurs décimales restent exactes et faciles à afficher.
Q : Que sont le BCD compressé et non compressé ?
R : Le BCD compressé stocke deux chiffres par octet (0x25 = 25). Le non compressé utilise un octet par chiffre ; le quartet de poids fort vaut 0 ou un indicateur de zone comme en EBCDIC.
Q : Pourquoi utilise-t-on encore le BCD ?
R : Pour une arithmétique décimale exacte sans erreur d’arrondi : systèmes financiers, calculatrices, horloges temps réel, afficheurs 7 segments. Le coût : 4 bits par chiffre au lieu de 3,32, soit environ 20 % de place en plus.