Mise à jour le, 29/12/2019
Visiteurs N°
Accueil |
Sommaires |
Micro-ordinateurs |
Physique |
Technologies |
Formulaires Mathématiques |
Accès à tous nos Produits |
Aperçu de tous nos Produits |
Nos Leçons aux Formats PDF |
Informatique |
Forums |
Divers et autres |
Décodeur pour Compteurs | Le code Hexadécimal | Les autres Codes 4 bits |
Codes B.C.D. | Code Aiken | Code + 3 |
Code Gray | Bas de page |
Le Compteur à Quatre Bits - Décodeurs pour Compteurs :
1. 5. - LE COMPTEUR A QUATRE BITS
Reprenons l'examen du compteur synchrone de module 16 vu dans la théorie précédente.
Le circuit et les niveaux de tension sur les quatre sorties sont représentées figure 9.
Le circuit possède 16 états, il passe de l'un à l'autre à chaque impulsion d'horloge. Les états se distinguent entre eux en observant le niveau de tension présent sur chaque sortie.
Par exemple, l'état 3 se distingue par des niveaux de tension hauts sur les sorties Q1 et Q2 et des niveaux bas sur les sorties Q3 et Q4.
Examinons maintenant avec attention comment varient les différentes sorties pour chaque état.
Comme vous pouvez l'observer, la sortie Q1 change de niveau à chaque impulsion d'horloge et plus précisément sur son front de montée ; Q2 change par contre toutes les deux impulsions, Q3 toutes les quatre et Q4 toutes les huit impulsions.
Le nombre d'impulsions d'horloge nécessaire pour faire changer d'état une bascule est de 1 pour Q1, 2 pour Q2, 4 pour Q3, 8 pour Q4, comme le résume le tableau de la figure 10.
Sortie | Poids |
Q1 | 1 |
Q2 | 2 |
Q3 | 4 |
Q4 | 8 |
On peut attribuer à chaque sortie le chiffre binaire 1 si elle est au niveau H et le chiffre binaire 0 lorsqu'elle est au niveau L tel que représenté figure 11.
En comparant cette table avec celle de la figure 7, on voit que dans la dernière colonne des deux tables on retrouve une numération en code binaire.
En outre, le poids de chaque chiffre correspond au poids de chaque sortie.
Le compteur utilise donc le code binaire. Ses sorties donnent un nombre binaire qui, traduit en code décimal, indique directement l'état atteint par le compteur et donc le nombre d'impulsions d'horloge parvenues jusqu'à cet instant.
En pratique, le numéro de chaque état correspond au nombre d'impulsions d'horloge nécessaire pour arriver à cet état en partant de l'état 0.
Vous pouvez voir que la sortie la plus éloignée de l'entrée, c'est-à-dire Q4 est celle de plus grand poids, elle correspond au bit le plus important du nombre binaire dont le poids est 8. On appelle ce bit «bit le plus significatif» (figure 12) en abrégé M.S.B. (initiales des mots anglais «Most Significant Bit», c'est-à-dire «bit le plus significatif»).
La sortie Q1 correspond au bit le moins important : son poids est 1, il est appelé «bit le moins significatif» en abrégé L.S.B. (initiales des mots anglais Least Significant Bit).
1. 6. - DÉCODEUR POUR COMPTEURS
Nous avons vu que la plupart des compteurs comptent en code binaire.
Il est cependant utile, et même nécessaire, de décoder les sorties en envoyant les signaux correspondants à des circuits appropriés qui, sans altérer les informations transmises, transforment le code de base en un autre, d'exploitation plus commode.
On peut, par exemple, avec un circuit décodeur approprié, obtenir directement au lieu des quatre bits habituels, 16 informations, 1 ou 0, disponibles sur 16 sorties différentes et commander ainsi l'allumage de LED représentant les codes décimaux 0 à 15.
Dans la figure 13, vous pouvez voir le schéma synoptique du système compteur binaire-décodeur décimal.
Du point de vue circuit, un décodeur de ce type n'est pas très complexe. A chaque sortie du compteur correspond un réseau de portes et d'inverseurs choisis convenablement. Par exemple pour le nombre 7, on aura le réseau de la figure 14.
Comme vous pouvez le remarquer le niveau à la sortie du ET est H uniquement lorsque Q1, Q2, Q3 sont au niveau H et Q4 au niveau L. Ceci se produit pour la combinaison 01112 qui en binaire correspond à 710.
Parfois, il n'est pas nécessaire que toutes les 16 sorties soient présentes. Il suffit alors de décoder l'état qui seul nous intéresse. Lorsque l'on a compté par exemple un certain nombre d'événements (pièces sur un tapis roulant, personnes dans une pièce...), il peut être nécessaire de le signaler et de réaliser une action par exemple (stopper le tapis roulant ou déclencher la ventilation).
Dans ce cas précis, un seul circuit préparé pour décoder le nombre choisi est nécessaire.
1. 7. - LE CODE HEXADÉCIMAL
Il est assez courant de rencontrer des circuits numériques utilisant quatre bits.
Le compteur examiné au paragraphe précédent opère sur quatre bits. Les registres, les comparateurs et autres composants fonctionnent sur 4, 8, 16 bits ou autres multiples de 4.
A l'intérieur des ordinateurs aussi, l'information est mise sous forme d'un groupe d'une succession de bits.
Actuellement, les microprocesseurs les plus diffusés fonctionnent sur 8 bits. Mais d'autres microprocesseurs utilisent également 16 ou 32 bits. Les grands ordinateurs fonctionnent avec 32 bits pour I.B.M. et 48 bits pour Control Data.
Mais dans tous les cas, nous retrouvons des successions de bits à 1 ou à 0 aux nombres de 4 ou de 48.
Afin de simplifier ces écritures qui seraient fastidieuses au moyen du code binaire, on utilise le code hexadécimal ou code à base 16.
Avec ce code, on peut remplacer un groupe de 4 bits par un seul caractère.
Dans le compteur précédent, 4 bits pouvaient représenter 16 états distincts, c'est-à-dire que nous pouvions compter de 00002 à 11112.
Le système hexadécimal, lui, utilise 16 signes : les dix premiers signes bien connus 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 auxquels on a rajouté A pour 10, B pour 11, C pour 12, D pour 13, E pour 14, F pour 15. Vous pouvez retrouver ceci dans le tableau de la figure 15.
Nombre | Code décimal | Code binaire | Code hexadécimal |
Zéro | 0 | 0000 | 0 |
Un | 1 | 0001 | 1 |
Deux | 2 | 0010 | 2 |
Trois | 3 | 0011 | 3 |
Quatre | 4 | 0100 | 4 |
Cinq | 5 | 0101 | 5 |
Six | 6 | 0110 | 6 |
Sept | 7 | 0111 | 7 |
Huit | 8 | 1000 | 8 |
Neuf | 9 | 1001 | 9 |
Dix | 10 | 1010 | A |
Onze | 11 | 1011 | B |
Douze | 12 | 1100 | C |
Treize | 13 | 1101 | D |
Quatorze | 14 | 1110 | E |
Quinze | 15 | 1111 | F |
Contrairement à ce que l'on peut penser, le code hexadécimal ne représente pas une complication, mais au contraire une simplification car il permet de transcrire de manière plus brève les nombres binaires généralement assez longs.
En effet, il est possible de passer du code binaire à l'hexadécimal avec une grande facilité.
Prenons par exemple le nombre binaire 11010011 et transformons-le en nombre hexadécimal.
La transformation peut être obtenue en regroupant les bits de droite à gauche quatre à quatre et en remplaçant chaque groupe par le chiffre hexadécimal correspondant qui se trouve dans la dernière colonne à droite de la figure 15 comme indiqué ci-dessous :
Le nombre hexadécimal ainsi obtenu peut être décomposé comme suit :
(D x 161) + (3 x 160) = (1310 x 1610) + (310 x 110) = 20810 + 310 = 21110
La transformation inverse est tout aussi simple : il suffit, en effet de transformer chaque chiffre hexadécimal en groupe de quatre bits correspondant comme dans l'exemple suivant :
1. 8. - LES AUTRES CODES 4 BITS
La numération binaire qui, comme nous l'avons vu, est parfaitement adaptée à l'utilisation dans un système électronique digital, n'est cependant pas très maniable pour l'homme, car il est accoutumé à la numération décimale.
Cette difficulté est particulièrement ressentie lors du chargement ou de la lecture des données fournies à un système à contrôle numérique ou à un calculateur.
En fait, les données exprimées avec le système binaire pur ne sont pas instantanément compréhensibles (par l'homme), le passage entre le système binaire et le système décimal étant assez compliqué.
Pour surmonter ces inconvénients, des systèmes de codification binaire des nombres décimaux ont été élaborés.
Dans ces codes, à chaque chiffre décimal, on fait correspondre une combinaison de chiffres binaires.
Pour exprimer les dix premiers
caractères arabes avec des nombres binaires, il convient de disposer au moins
de quatre chiffres. Avec ces quatre chiffres binaires, on peut avoir les seize
combinaisons suivantes :
0000 | 0100 | 1000 | 1100 |
0001 | 0101 | 1001 | 1101 |
0010 | 0110 | 1010 | 1110 |
0011 | 0111 | 1011 | 1111 |
Puisque les combinaisons binaires disponibles sont en quantité plus grande que les caractères décimaux, il est possible de choisir plusieurs systèmes pour la représentation des chiffres décimaux. Ces divers systèmes sont appelés codes et sont représentés figure 16.
On distingue deux sortes de codes : les codes «pondérés» et les codes «non pondérés».
En général, les codes sont «pondérés» quand il existe des nombres qui indiquent le «poids» des chiffres binaires des groupes correspondants.
En multipliant ces nombres par les chiffres binaires correspondants, on obtient l'équivalence décimale.
Tous les autres codes dans lesquels on ne peut repérer le poids des chiffres binaires des groupes correspondants sont appelés «non pondérés» et sont élaborés sur une base à développement mathématique complexe ou plus simplement sont caractérisés par des tables faites spécialement.
Différents codes ont été imaginés, ayant diverses propriétés logiques et arithmétiques. Le choix de l'un ou de l'autre type de code dépend exclusivement des applications auxquelles il est destiné.
Dans le tableau de la figure 16, sont reportés quelques-uns des codes les plus courants.
1. 8. 1. - CODES B - C - D
Un type de code largement répandu est le code décimal codé binaire généralement appelé «B.C.D.» pour "Binary Coded Decimal".
Habituellement, le code binaire est mieux adapté pour les circuits numériques, mais il est pénible de traduire un nombre binaire en décimal surtout lorsque l'on a un grand nombre de bits.
Le code B.C.D., utilisé en association avec des décodeurs appropriés, permet par contre de traduire facilement, en expression binaire les nombres décimaux et vice versa.
Le code B.C.D. est constitué de la manière suivante : chaque chiffre du nombre décimal est codé en un nombre binaire pur de quatre bits.
La figure 17-a montre le codage B.C.D. des nombres décimaux de 11010 à 12510.
Fig. 17-a. - Nombres 11010 à 12510 codés en B.C.D.
Code décimal | Code BCD | Code BCD | Code BCD |
110 | 0001 | 0001 | 0000 |
111 | 0001 | 0001 | 0001 |
112 | 0001 | 0001 | 0010 |
113 | 0001 | 0001 | 0011 |
114 | 0001 | 0001 | 0100 |
115 | 0001 | 0001 | 0101 |
116 | 0001 | 0001 | 0110 |
117 | 0001 | 0001 | 0111 |
118 | 0001 | 0001 | 1000 |
119 | 0001 | 0001 | 1001 |
120 | 0001 | 0010 | 0000 |
121 | 0001 | 0010 | 0001 |
122 | 0001 | 0010 | 0010 |
123 | 0001 | 0010 | 0011 |
124 | 0001 | 0010 | 0100 |
125 | 0001 | 0010 | 0101 |
Comme vous pouvez le constater, le code B.C.D. est une synthèse du code décimal et du code binaire.
Au sein de chaque groupe de 4 bits, le code binaire reste valable et nous retrouvons les poids 1, 2, 4, 8. Par contre, pour le poids des groupes les uns par rapport aux autres, la pondération est celle du système décimal comme l'indique l'exemple de la figure 17-b.
L'avantage offert par la méthode du codage B.C.D. est de permettre l'utilisation de circuits numériques qui travaillent en code binaire tout en gardant une pondération décimale pour chaque chiffre exprimé en binaire.
Pour cette raison, toutes les calculatrices de poche utilisent le code B.C.D.
Il existe toutefois un inconvénient à ce système de codage, en effet, celui-ci requiert un nombre de bits plus élevé que celui nécessaire en code binaire.
Par exemple 402210 s'écrira :
en binaire : 1111 1011 01102, soit 12 signes.
en B.C.D. : 0100 0000 0010 0010BCD, soit 16 signes.
Dans la majeure partie des cas, il devient trop coûteux d'utiliser ce code, en effet, chaque bit supplémentaire nécessite des composants supplémentaires.
1. 8. 2. - CODE AIKEN
C'est un code 2421 «pondéré». Pour les chiffres décimaux 0, 1, 2, 3, 4, il concorde avec le code B.C.D., tandis que pour les nombres décimaux 5, 6, 7, 8, 9, il concorde avec les nombres 11, 12, 13, 14, 15 du code binaire pur.
Ce code a la propriété d'être auto-complémentaire, ce qui permet d'obtenir le complément à 9 des nombres codifiés, en remplaçant simplement les 0 par 1 et les 1 par 0.
Prenons par exemple le chiffre décimal 2 codifié 0010, en inversant le chiffre binaire 0010, on obtient 1101 groupe correspondant au chiffre 7 qui est le complément à 9 de 2. Cette propriété est utile dans le calcul de la soustraction.
Par exemple, le nombre 63 en code Aiken est écrit de cette manière : 1100 0011.
1. 8. 3. - CODE + 3
Ce code est aussi appelé Stibiz du nom de son inventeur et c'est un code «non pondéré».
Il utilise les combinaisons de quatre chiffres du binaire pur compris entre les nombres décimaux 3 et 12.
Chaque nombre s'obtient en ajoutant 3 à chaque chiffre du nombre décimal et en le codant en B.C.D.
Dans ce système n'apparaissent pas les combinaisons 0000 et 1111. Par exemple, le nombre 63 en code + 3 s'écrit 1001 0110.
1. 8. 4. - CODE GRAY
Ce code, lui aussi non pondéré, à la propriété de présenter dans le passage d'un nombre au suivant, la variation d'un seul «bit», c'est-à-dire d'un seul chiffre du groupe binaire. Il présente un risque d'aléas plus faible en séquentiel.
Dans ce code, le
nombre décimal 63 est écrit
0101
0010. En plus, des codes décrits, il en existe d'autres ayant des
propriétés variées mais qui ne seront pas examinés car ils sortent du cadre
des leçons présents dans l'ensemble des cours.
Cliquez ici pour la leçon suivante ou dans le sommaire prévu à cet effet. | Haut de page |
Page précédente | Page suivante |
Envoyez un courrier électronique à Administrateur Web Société pour toute question ou remarque concernant ce site Web.
Version du site : 10. 4. 12 - Site optimisation 1280 x 1024 pixels - Faculté de Nanterre - Dernière modification : 02 Septembre 2016.
Ce site Web a été Créé le, 14 Mars 1999 et ayant Rénové, en Septembre 2016.