Convertisseur code Excès-3 vers BCD : Table de vérité et logique
L'Excès-3 (XS-3) est un code BCD auto-complémentaire où chaque chiffre décimal est représenté par sa valeur binaire +3. La conversion vers BCD standard (8421) nécessite simplement de soustraire 3 (0011).
Table de vérité
| Entrée Excès-3 (E3 E2 E1 E0) | Valeur décimale | Sortie BCD (B3 B2 B1 B0) |
|---|---|---|
| 0000 | -3 (invalide) | 0001* (don't care / erreur) |
| 0001 | -2 (invalide) | 0010* |
| 0010 | -1 (invalide) | 0011* |
| 0011 | 0 | 0000 |
| 0100 | 1 | 0001 |
| 0101 | 2 | 0010 |
| 0110 | 3 | 0011 |
| 0111 | 4 | 0100 |
| 1000 | 5 | 0101 |
| 1001 | 6 | 0110 |
| 1010 | 7 | 0111 |
| 1011 | 8 | 1000 |
| 1100 | 9 | 1001 |
| 1101 | 10 (invalide) | 1010* (don't care) |
| 1110 | 11 (invalide) | 1011* |
| 1111 | 12 (invalide) | 1100* |
*Entrées XS-3 invalides (0–2, 10–12) sont conditions don't-care ; sortie peut être 0000 ou drapeau erreur.
Implémentation logique
BCD = XS-3 − 0011 (soustraction binaire). Peut être implémenté avec :
- Soustracteur binaire 4 bits (soustracteurs complets ou additionneur avec complément à 2 de 3 = 1101).
- Logique combinatoire (K-map minimisée) pour chaque bit de sortie.
- ROM/PLA lookup (16×4).
Expressions booléennes simplifiées (Entrées valides 3–12)
B0 = E0' (inverse LSB) B1 = E1 ⊕ E0 (XOR) B2 = E2 ⊕ (E1·E0) (XOR avec ET) B3 = E3 ⊕ (E2·E1·E0) (XOR avec ET 3 entrées) (Dérivé de la soustraction de 0011 avec propagation de retenue.)
Application
Utilisé dans calculatrices anciennes, instruments numériques, et unités arithmétiques où XS-3 simplifie la soustraction par complément à 9 (inversion bits).
