Le Code Décimal Binaire (BCD)
Le code décimal binaire, ou BCD, est un autre processus pour convertir les nombres décimaux en leurs équivalents binaires.
Comme nous l’avons vu dans cette section sur les Nombres Binaires, il existe de nombreux codes binaires utilisés dans les circuits numériques et électroniques, chacun ayant son utilisation spécifique, le Code Décimal Binaire étant l’un des principaux.
Comme nous vivons naturellement dans un monde décimal (base 10), nous avons besoin d’un moyen de convertir ces nombres décimaux dans un environnement binaire (base 2) que les ordinateurs et les appareils électroniques numériques comprennent, et le code décimal binaire nous permet de le faire.
Nous avons vu précédemment qu’un code binaire de n bits est un groupe de “n” bits qui supposent jusqu’à 2n combinaisons distinctes de 1 et de 0. L’avantage du système de code décimal binaire est que chaque chiffre décimal est représenté par un groupe de 4 chiffres binaires ou bits, de manière très similaire au système hexadécimal. Ainsi, pour les 10 chiffres décimaux (0 à 9), nous avons besoin d’un code binaire de 4 bits.
Mais ne vous y trompez pas, le code décimal binaire n’est pas le même que l’hexadécimal. Alors qu’un nombre hexadécimal à 4 bits est valide jusqu’à F16 représentant le binaire 11112 (décimal 15), les nombres décimaux binaires s’arrêtent à 9, avec le binaire 10012. Cela signifie que, bien que 16 nombres (24) puissent être représentés à l’aide de quatre chiffres binaires, dans le système de numérotation BCD, les six combinaisons de code binaire : 1010 (décimal 10), 1011 (décimal 11), 1100 (décimal 12), 1101 (décimal 13), 1110 (décimal 14) et 1111 (décimal 15) sont classées comme des nombres interdits et ne peuvent pas être utilisés.
L’avantage principal du code décimal binaire est qu’il permet une conversion facile entre la forme décimale (base 10) et la forme binaire (base 2). Cependant, le désavantage est que le code BCD est peu efficace, car les états entre 1010 (décimal 10) et 1111 (décimal 15) ne sont pas utilisés. Néanmoins, le code décimal binaire a de nombreuses applications importantes, en particulier lors de l’utilisation des affichages numériques.
Dans le système de numération BCD, un nombre décimal est séparé en quatre bits pour chaque chiffre décimal contenu dans le nombre. Chaque chiffre décimal est représenté par sa valeur binaire pondérée effectuant une traduction directe du nombre. Ainsi, un groupe de 4 bits représente chaque chiffre décimal affiché allant de 0000 pour zéro à 1001 pour neuf.
Par exemple, 35710 (Trois Cent Cinquante-Sept) en décimal serait présenté en code décimal binaire comme suit :
35710 = 0011 0101 0111 (BCD)
Nous pouvons observer que le BCD utilise une codification pondérée, car le bit binaire de chaque groupe de 4 bits représente un poids donné de la valeur finale. En d’autres termes, le BCD est un code pondéré et les poids utilisés dans le code décimal binaire sont 8, 4, 2, 1, communément appelé le code 8421 car il forme la représentation binaire sur 4 bits du chiffre décimal concerné.
Représentation du Code Décimal Binaire d’un Nombre Décimal
Puissance Binaire | 23 | 22 | 21 | 20 |
Pondération Binaire : | 8 | 4 | 2 | 1 |
Le poids décimal de chaque chiffre décimal à gauche augmente d’un facteur de 10. Dans le système de numération BCD, le poids binaire de chaque chiffre augmente d’un facteur de 2 comme montré. Ainsi, le premier chiffre a un poids de 1 ( 20 ), le deuxième chiffre a un poids de 2 ( 21 ), le troisième a un poids de 4 ( 22 ), le quatrième a un poids de 8 ( 23 ).
Ensuite, la relation entre les nombres décimaux et les chiffres BCD pondérés est donnée ci-dessous.
Table de Vérité pour le Code Décimal Binaire
Nombre Décimal | Code BCD 8421 | |
0 | 0000 0000 | |
1 | 0000 0001 | |
2 | 0000 0010 | |
3 | 0000 0011 | |
4 | 0000 0100 | |
5 | 0000 0101 | |
6 | 0000 0110 | |
7 | 0000 0111 | |
8 | 0000 1000 | |
9 | 0000 1001 | |
10 (1+0) | 0001 0000 | |
11 (1+1) | 0001 0001 | |
12 (1+2) | 0001 0010 | |
… | … | |
20 (2+0) | 0010 0000 | |
21 (2+1) | 0010 0001 | |
22 (2+2) | 0010 0010 | |
etc., continuant par groupes de quatre |
Nous pouvons voir que le code 8421 BCD n’est rien d’autre que les poids de chaque chiffre binaire, chaque nombre décimal étant exprimé comme son équivalent binaire sur quatre bits.
Conversion Décimal en BCD
Comme nous l’avons vu ci-dessus, la conversion de décimal à code décimal binaire est très similaire à la conversion d’hexadécimal en binaire. Tout d’abord, séparez le nombre décimal en ses chiffres pondérés, puis écrivez le code BCD 8421 équivalent de 4 bits représentant chaque chiffre décimal, comme montré.
Exemple de Code Décimal Binaire No1
En utilisant le tableau ci-dessus, convertissez les nombres décimaux suivants : 8510, 57210 et 857910 en leurs équivalents BCD 8421.
8510 = 1000 0101 (BCD)
57210 = 0101 0111 0010 (BCD)
857910(BCD)
Notez que le nombre binaire résultant après la conversion sera une véritable traduction binaire des chiffres décimaux. C’est parce que le code binaire est traduit comme un véritable compte binaire.
Conversion BCD en Décimal
La conversion du code décimal binaire en décimal est l’exact opposé de ce qui précède. Il suffit de diviser le nombre binaire en groupes de quatre chiffres, en commençant par le chiffre de moindre importance, puis d’écrire le chiffre décimal représenté par chaque groupe de 4 bits. Ajoutez des zéros supplémentaires à la fin si nécessaire pour produire un groupe complet de 4 bits. Par exemple, 1101012 deviendrait : 0011 01012 ou 3510 en décimal.
Exemple de Code Décimal Binaire No2
Convertissez les nombres binaires suivants : 10012, 10102, 10001112 et 10100111000.1012 en leurs équivalents décimaux.
10012 = 1001BCD = 910
10102 = cela produira une erreur car il s’agit de décimal 1010 et non d’un nombre BCD valide
10001112 = 0100 0111BCD = 4710
10100111000.1012 = 0101 0011 0001.1010BCD = 538.62510
La conversion de BCD en décimal ou de décimal en BCD est une tâche relativement simple, mais nous devons nous rappeler que les nombres BCD sont des nombres décimaux et non des nombres binaires, même s’ils sont représentés à l’aide de bits. La représentation BCD d’un nombre décimal est importante à comprendre, car les systèmes basés sur microprocesseurs utilisés par la plupart des gens doivent être en système décimal.
Cependant, bien que le BCD soit facile à coder et à décoder, ce n’est pas un moyen efficace de stocker des nombres. Dans l’encodage standard BCD 8421 des nombres décimaux, le nombre de bits de données individuels nécessaires pour représenter un nombre décimal donné sera toujours supérieur au nombre de bits requis pour un encodage binaire équivalent.
Par exemple, en binaire, un nombre décimal à trois chiffres de 0 à 999 nécessite seulement 10 bits (11111001112), tandis qu’en code décimal binaire, le même nombre nécessite un minimum de 12 bits (0011 1110 0111BCD) pour la même représentation.
De plus, effectuer des tâches arithmétiques à l’aide de nombres décimaux binaires peut être un peu difficile car chaque chiffre ne peut pas dépasser 9. L’ajout de deux chiffres décimaux BCD créera un bit de retenue possible de 1 qui doit être ajouté au groupe suivant de 4 bits.
Si la somme binaire avec le bit de retenue ajouté est égale ou inférieure à 9 (1001), le chiffre BCD correspondant est correct. Mais lorsque la somme binaire est supérieure à 9, le résultat est un chiffre BCD invalide. Par conséquent, il est préférable de convertir les nombres BCD en binaire pur, d’effectuer l’addition requise, puis de les reconvertir en BCD avant d’afficher les résultats.
Néanmoins, l’utilisation d’un système de codage BCD dans les systèmes microélectroniques et informatiques est particulièrement utile dans les situations où le code décimal binaire doit être affiché sur un ou plusieurs affichages à 7 segments LED ou LCD, et il existe de nombreux circuits intégrés populaires qui sont configurés pour donner une ou plusieurs sorties BCD.
Un circuit intégré courant est le compteur/diviseur asynchrone 74LS90 qui contient des compteurs indépendants divisant par 2 et par 5, qui peuvent être utilisés ensemble pour produire un compteur décade divisant par 10 avec des sorties BCD. Un autre est le 74LS390 qui est une version duale du 74LS90 basique et peut également être configuré pour produire une sortie BCD.
Mais les circuits intégrés à code BCD les plus couramment utilisés sont le 74LS47 et le 74LS48, décodeurs/driver BCD à afficher à 7 segments, qui convertissent un code BCD sur 4 bits d’un compteur, etc., et le convertit en code d’affichage requis pour entraîner les segments individuels d’un affichage à 7 segments LED. Bien que les deux circuits intégrés fonctionnent de la même manière, le 74LS47 a des sorties actives à bas niveau pour entraîner des affichages à anode commune, tandis que le 74LS48 a des sorties actives à haut niveau pour entraîner des affichages à cathode commune.
Circuit Intégré Décodeur de Code Décimal Binaire
Résumé du Code Décimal Binaire
Nous avons vu ici que le Code Décimal Binaire ou BCD est simplement la représentation binaire sur 4 bits d’un chiffre décimal, chaque chiffre décimal étant remplacé dans les parties entière et fractionnaire par son équivalent binaire. Le Code BCD utilise quatre bits pour représenter les 10 chiffres décimaux de 0 à 9.
Par exemple, si nous voulons afficher des nombres décimaux compris entre 0 et 9 (un chiffre), nous aurions besoin de 4 bits de données (une demi-octet), des nombres décimaux dans la plage de 0 à 99 (deux chiffres), nous aurions besoin de 8 bits (un octet), des nombres décimaux entre 0 et 999 (trois chiffres), nous aurions besoin de 12 bits, et ainsi de suite. L’utilisation d’un seul octet (8 bits) pour stocker ou afficher deux chiffres BCD, permettant à un octet de contenir un nombre BCD dans la plage de 00 à 99, est connue sous le nom de BCD emballé.
Le code décimal binaire standard est communément connu comme un code BCD 8421 pondéré, avec 8, 4, 2 et 1 représentant les poids des différents bits commençant par le bit le plus significatif (MSB) et se dirigeant vers le bit le moins significatif (LSB). Les poids des positions individuelles des bits d’un code BCD sont : 23 = 8, 22 = 4, 21 = 2, 20 = 1.
L’avantage principal du système Code Décimal Binaire est qu’il s’agit d’un système rapide et efficace pour convertir les nombres décimaux en nombres binaires par rapport au système binaire pur. Mais le code BCD est peu efficace, car de nombreux états de 4 bits (10 à 16) ne sont pas utilisés, mais les affichages décimaux ont des applications importantes.