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 |
Systèmes Numériques ; Décimal, Binaire, Octal, Hexadécimal et Conversions entre Systèmes :
Nous allons aborder dans cette leçon les systèmes numériques dont certains sont utilisés dans les appareils informatisés et dans la vie courante.
1. - SYSTÈMES NUMÉRIQUES
On peut introduire dans la mémoire d'un calculateur des mots, c'est-à-dire des groupes de chiffres binaires ayant une longueur déterminée.
On a déjà vu, dans la leçon précédente, de quelle façon ces mots doivent être interprétés ; soit comme données, soit comme instructions. L'instruction ou la donnée peut être exprimée par un ou plusieurs mots.
Par conséquent, on aura dans la mémoire :
- des instructions en un seul ou plusieurs mots,
- des données numériques en un seul ou plusieurs mots.
Les deux cas seront repris en détail dans cette leçon. Rappelons toutefois que la mémoire du calculateur contient toujours des groupes de bits équivalents à des nombres binaires.
Les nombres octaux, décimaux et hexadécimaux sont utilisés par l'homme, mais ne peuvent pas être acceptés dans les circuits du calculateur.
Le système numérique universellement adopté est le système décimal, ainsi nommé parce qu'il emploie dix chiffres pour représenter les dix premières valeurs numériques.
Avec deux chiffres on forme donc le système binaire, avec huit le système octal, avec seize le système hexadécimal et avec un nombre quelconque de chiffres, un autre système, à condition toutefois qu'il présente une utilité pratique.
On a vu qu'un ordinateur utilise uniquement le système binaire puisque les circuits de base ne peuvent présenter que deux états indiqués par les chiffres "0" et "1". Certains calculateurs utilisent les codes octal et hexadécimal.
Les expressions en octal et en hexadécimal on l'avantage d'être plus concises que les expressions binaires et d'être facilement transformables en expressions binaires équivalentes.
Nous allons voir maintenant les caractéristiques des différents systèmes numériques en commençant par le système décimal.
Chaque nombre écrit dans ce système est formé par une disposition des chiffres allant de 0 à 9 indiquant de droite à gauche les unités, les dizaines, les centaines, les milliers... c'est-à-dire des puissances de dix en ordre croissant.
La position de chaque chiffre dans le nombre est donc importante : chaque chiffre à gauche représente l'unité d'ordre supérieur par rapport à celle du chiffre disposé à sa droite. Ainsi, par exemple, dans le nombre 32 875, les différents chiffres prennent respectivement les valeurs suivantes :
5 unités ou 5 unités simples
7 dizaines ou 70 unités simples
8 centaines ou 800 unités simples
2 milliers ou 2 000 unités simples
3 dizaines de milliers ou 30 000 unités simples
Il ne faut pas oublier que le rang peut être transcrit en puissances de 10 de la façon suivante :
Unités simples = 100, dizaines = 101, centaines = 102, milliers = 103.
Maintenant, en multipliant chaque chiffre par la puissance correspondante et en ajoutant les produits obtenus, selon les règles bien connues de l'arithmétique décimale, on obtient le nombre original :
En conclusion, on peut écrire l'égalité suivante :
32 875 = (3 x 104) + (2 x 103) + (8 x 102) + (7 x 101) + (5 x 100)
L'égalité ainsi définie représente sous forme arithmétique la signification conventionnelle de l'écriture décimale.
Certaines règles de calcul arithmétique ont été utilisées ici, d'autres peuvent être utilisées pour extraire la valeur du même nombre par une séquence d'opérations répétitives.
Voyons ce nouveau procédé en nous
référant encore au nombre
32 875.
On
multiplie le premier chiffre de gauche par
10
et, au produit obtenu, on ajoute le 2 chiffre ; puis on multiplie par
10
le total ainsi obtenu et, au nouveau produit, on ajoute le 3ème chiffre et
ainsi de suite :
3 x 10 = 30 ; 30 + 2 = 32
32 x 10 = 320 ; 320 + 8 = 328
328 x 10 = 3 280 ; 3 280 + 7 = 3 287
3 287 x 10 = 32 870 ; 32 870 + 5 = 32 875
Ce procédé peut être considéré comme une "lecture répétitive du nombre donné" ; il est spécialement important, parce qu'il est semblable à celui adopté par le calculateur dans les phases de lecture.
Dans le système binaire, deux chiffres seulement sont nécessaires pour écrire les nombres : "0" et "1". La base du système est donc deux.
Les règles vues précédemment pour le système décimal sont valables aussi pour la formation des nombres binaires. Dans la notation binaire, chaque chiffre est néanmoins associé à une puissance de deux au lieu d'une puissance de dix.
Chaque chiffre binaire qui constitue le nombre (on se réfère ici toujours à un nombre décimal) est pondéré, c'est-à-dire qu'il possède un poids déterminé dont la valeur est associée à une puissance de 2. Cette valeur est croissante quand on lit le chiffre binaire de la droite vers la gauche.
Dans le tableau qui suit, on montre la représentation des nombres en numération pondérée à base 2.
Pour trouver l'équivalent décimal du nombre binaire "101101" de l'exemple du tableau, on prélève, pour chaque "1" binaire, la valeur décimale du poids occupé par le rang de chacun des chiffres. On additionne ensuite chaque résultat partiel. Cette somme correspond au nombre décimal équivalent.
Dans ce cas, 32 + 8 + 4 + 1 = 45 ; ce nombre décimal est l'équivalent du nombre binaire 101101.
Dans ce système octal, la représentation des nombres est faite par une succession de groupes de chiffres, choisis dans les huit premiers décimaux, c'est-à-dire entre 0 et 7. La base est 8 et les poids associés aux chiffres sont des puissances de 8.
D'une manière analogue aux systèmes déjà vus, on pourra donc décomposer un nombre octal, par exemple 3 476, de la façon suivante :
3 476 = (3 x 83) + (4 x 82) + (7 x 81) + (6 x 80)
De plus, pour le même nombre, on
peut faire un autre type de lecture ; en faisant les calculs avec des
nombres décimaux et en employant la méthode décrite précédemment pour les
nombres décimaux :
3 x 8 = 24 ; 24 + 4 = 28
28 x 8 = 224 ; 224 + 7 = 231
231 x 8 = 1 848 ; 1 848 + 6 = 1 854
Le nombre octal 3 476 correspond donc au nombre décimal 1 854.
1. 4. - LE SYSTÈME HEXADÉCIMAL
Ce système qui emploie seize chiffres est à base 16 ; donc, aux dix chiffres décimaux que nous connaissons, il faut ajouter six lettres :
{A, B, C, D, E, F}
On attribue à ces caractères alphabétiques les valeurs suivantes, exprimées en nombres décimaux :
A = 10 ; B = 11 ; C = 12 ; D = 13 ; E = 14 ; F = 15.
Les poids associés aux chiffres hexadécimaux sont des puissances de 16. Exemple :
E1A3D = (E x 164) + (1 x 163) + (A x 162) + (3 x 161) + (D x 160)
Comme précédemment, on peut également faire un autre genre de lecture, en faisant les calculs avec des nombres décimaux :
E x 16 = 14 x 16 = 224 ; 224 + 1 = 225
225 x 16 = 3 600 ; 3 600 + A = 3 600 + 10 = 3 610
3 610 x 16 = 57 760 ; 57 760 + 3 = 57 763
57 763 x 16 = 924 208 ; 924 208 + D = 924 208 + 13 = 924 221
E1A3D en hexadécimal est donc égal à 924 221 en décimal.
1. 5. - NOTATIONS DES SYSTÈMES NUMÉRIQUES
Dans un système numérique quelconque, qu'il soit de base deux, huit, dix ou seize, la représentation d'un nombre est unique ; cela signifie qu'à chaque nombre entier, correspond une et une seule suite de chiffres à l'intérieur d'un système donné, les éventuels zéros non significatifs (c'est-à-dire ceux à gauche du nombre) n'étant pas pris en compte.
Une quantité décimale peut toujours être exprimée dans un autre système numérique ; on appelle cette opération le codage d'un nombre.
Par exemple, le nombre décimal
318
se représente ainsi :
- 100111110 dans le système binaire,
- 476 dans le système octal,
- 13E dans le système hexadécimal.
Pour reconnaître immédiatement le
système numérique choisi dans l'écriture d'un nombre, on note en indice et en
décimal la base correspondante du système.
Exemple :
31810 = 1001111102 = 4768 = 13E16
On utilise aussi en indice la lettre H (hexadécimal) à la place de 16 ; il revient donc au même d'écrire : 13E16 ou 13EH.
2. - CONVERSIONS ENTRE SYSTÈMES NUMÉRIQUES
Convertir un nombre écrit dans un système numérique en un autre signifie qu'il faut trouver la disposition correspondante des chiffres propre au nouveau système.
On verra successivement les méthodes, c'est-à-dire les calculs nécessaires pour faire de telles opérations et on analysera les conversions entre les systèmes numériques précédemment décrits.
Nous ne décrirons pas la conversion d'un système numérique quelconque en système décimal, car nous l'avons fait suffisamment dans les exemples précédents. Pour de plus amples infos à cette adresse : http://www.electronique-et-informatique.fr/Electronique-et-Informatique/Digit/Digit_7T.php
Pour convertir un nombre décimal dans ses équivalents binaire, octal et hexadécimal, on peut adopter le procédé suivant :
- On divise le nombre décimal par la base du nouveau système : on obtient un quotient entier et un reste que l'on utilisera pour former un chiffre du nouveau système.
- On continue en divisant par la base le quotient entier de l'opération précédente et on en tire un reste comme précédemment ; on recommence cette opération jusqu'à ce que l'on obtienne un quotient égal à zéro.
- Le résultat obtenu est constitué de tous les restes des divisions, écrits de droite à gauche, en partant du dernier vers le premier.
On suppose, par exemple, vouloir convertir le nombre décimal 123 dans les trois systèmes (binaire, octal, hexadécimal).
En commençant par le système binaire, on divise 123 par 2 et on obtient un quotient de "61" et un reste de "1" ; on recommence l'opération pour le quotient 61 et pour chaque quotient successif jusqu'à ce qu'il soit égal à zéro.
La conversion complète de 123 en forme binaire est la suivante :
Comme deuxième exemple, voyons la conversion du nombre décimal 218 en nombre binaire :
On peut facilement vérifier ce genre de conversions, en effectuant la lecture inverse des nombres binaires trouvés et en remarquant ainsi l'équivalence avec les nombres décimaux respectifs.
Voici un exemple de vérification
pour la deuxième conversion :
1 x 2 = 2 ; 2 + 1 = 3
3 x 2 = 6 ; 6 + 0 = 6
6 x 2 = 12 ; 12 + 1 = 13
13 x 2 = 26 ; 26 + 1 = 27
27 x 2 = 54 ; 54 + 0 = 54
54 x 2 = 108 ; 108 + 1 = 109
109 x 2 = 218 ; 218 + 0 = 218
Le nombre 218 est justement le nombre recherché.
Évidemment, transformer les nombres décimaux en binaire et vice versa est un exercice ennuyeux, du moins pour l'homme, et de plus présente beaucoup de risques d'erreurs.
Celui qui voudrait s'entraîner un peu pourrait chercher l'équivalent binaire de nombre décimaux relativement grands, comme par exemple 1 947 563. Après avoir fait 21 divisions, on trouve que ce nombre exprimé en forme binaire équivaut à 111 011 011 011 110 101 011 et là, on comprend très bien pourquoi l'homme n'utilise pas les nombres binaires dans les calculs.
Les nombres binaires ont en moyenne à peu près trois fois plus de chiffres que les nombres décimaux équivalents, ils sont difficiles à distinguer entre eux et à mémoriser.
Voyons maintenant la conversion, en système octal, du nombre décimal 123 du premier exemple.
Le procédé à suivre est toujours le même ; seule la base du nouveau système diffère :
Si, par contre, on veut représenter 123 en notation hexadécimale, on divisera successivement le nombre par 16 :
2. 1. - CONVERSIONS ENTRE SYSTÈME BINAIRE ET SYSTÈME OCTAL OU HEXADÉCIMAL ET VICE VERSA
La conversion d'un nombre binaire dans le système octal ou hexadécimal est très facile et ne demande pas de gros calculs.
Voyons d'abord la conversion dans le système octal.
Un nombre binaire peut être converti en octal en appliquant la règle suivante :
- en partant de la droite, on divise le nombre binaire par groupes de 3 bits, dits triplets, en ajoutant éventuellement des zéros à gauche pour compléter le triplet de gauche.
- on écrit, pour chaque triplet, la valeur en chiffres octaux.
- en mettant ces chiffres l'un à côté de l'autre, dans le même ordre, on obtient le nombre octal recherché.
Exemple :
Transformons en octal le nombre binaire 10 101 001 110 100.
La règle de conversion de binaire en octal est un cas particulier qui s'étend à tous les systèmes numériques ayant comme base une puissance de 2. Par exemple, cette règle peut être valable pour le système à base 4 égale à 22, le système octal égal à 23 et le système hexadécimal égal à 24.
La règle générale de conversion est la suivante :
- en allant de droite à gauche, diviser l'expression binaire en groupes de chiffres, le nombre de ces derniers étant égal à l'exposant de la puissance de 2 caractérisant la base dans laquelle on fait cette conversion.
- pour chaque groupe, écrire par ordre la valeur numérique, en utilisant le chiffre approprié du nouveau système.
Exemple :
Transformons en hexadécimal le nombre binaire de l'exemple précédent.
Pour le système hexadécimal, la base étant 16, on divise le nombre binaire en groupes de 4 bits (24 = 16) :
Observons maintenant les conversions d'octal et hexadécimal en binaire. Il s'agit là d'opérations inverses, basées sur les mêmes correspondances entre chiffres hexadécimaux et quartets binaires d'une part, puis chiffres octaux et triplets binaires d'autre part (figure 1).
Exemples :
- Le nombre octal 7336 est converti en binaire de la façon suivante :
- Le nombre hexadécimal AA1B est converti en binaire de la façon suivante :
2. 2. - NOMBRES FRACTIONNAIRES
Pour représenter un nombre fractionnaire, on utilise encore la méthode qui consiste à attribuer à chaque chiffre un poids approprié, en rapport avec la position occupée par ce même chiffre à l'intérieur du nombre écrit. On affecte aux chiffres qui précédent la virgule les mêmes poids que l'on aurait dans le cas d'un nombre entier ; par contre, on attribue aux chiffres qui suivent la virgule, des poids constitués de puissances aux exposants négatifs, de valeur absolue croissante, en allant vers la droite.
Par exemple, le nombre 512,374 doit être défini de la façon suivante :
La lecture d'un nombre fractionnaire se fait en deux temps, en utilisant toujours le même procédé. D'abord, on lit la partie entière comme s'il s'agissait d'un nombre entier ; ensuite, on s'occupe de la partie fractionnaire comme pour la précédente mais en ayant toujours à l'esprit qu'elle vient après la virgule.
En reprenant le nombre de l'exemple précédent, on en fait la lecture de la façon suivante :
On pourrait maintenant étendre ces mêmes observations au système binaire, octal ou hexadécimal et, par conséquent, traiter les conversions des nombres fractionnaires d'un système à l'autre. Un tel travail pourrait être intéressant comme exercice d'arithmétique mais nous nous en tiendrons là, sachant qu'un nombre fractionnaire peut être considéré par l'ordinateur comme une union de deux entiers : le premier qui précède la virgule et qui représente une quantité d'unités ; le second qui suit la virgule et qui représente une fraction de ces mêmes unités. Les règles des nombres entiers sont donc suffisantes.
2. 3. - CODE BCD (Binary Coded Decimal)
La codification BCD d'un chiffre décimal n'est rien d'autre qu'une substitution de ce chiffre par un groupe de quatre chiffres binaires. Ces derniers sont plus que suffisants pour coder les chiffres décimaux de "0" jusqu'à "9" donc, six des seize codes possibles ne seront pas utilisés dans la représentation BCD (voir le tableau de la figure 2).
Prenons comme exemple la conversion du nombre 146 en code BCD, défini selon les correspondances de la figure 2.
On a mentionné l'existence du code BCD car l'information numérique, sur beaucoup de circuits, notamment sur ceux des instruments digitaux de mesure, est fournie sous forme BCD (figure 3).
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.