Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% ont trouvé ce document utile (0 vote)
8 vues15 pages

syst_numération(1)

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1/ 15

CHAPITRE I SYSTEMES DE NUMERATION - ARITHMETIQUE BINAIRE - CODES

SYSTEMES DE NUMERATION - ARITHMETIQUE BINAIRE


CODES

I- Systèmes de numération

Le système de numération binaire est le plus important de ceux utilisés dans les circuits
numériques, bien qu'il ne faille pas pour autant négliger l'importance d'autres systèmes. Le
système décimal revêt de l'importance en raison de son acceptation universelle pour représenter
les grandeurs du monde courant. De ce fait, il faudra parfois que des valeurs décimales soient
converties en valeurs binaires avant d'être introduites dans le circuit numérique. Par exemple,
lorsque vous composez un nombre décimal sur votre calculatrice (ou sur le clavier de votre
ordinateur), les circuits internes convertissent ce nombre décimal en une valeur binaire.
De même, il y aura des situations où des valeurs binaires données par un circuit numérique
devront être converties en valeurs décimales pour qu'on puisse les lire. Par exemple, votre
calculatrice (ou votre ordinateur) calcule la réponse à un problème au moyen du système
binaire puis convertit ces réponses en des valeurs décimales avant de les afficher.

I-1- Système décimal

Le système décimal comprend 10 nombres ou symboles qui sont 0, 1, 2, 3,4, 5, 6, 7, 8, 9 ; en


utilisant ces symboles comme chiffres dans un nombre, on parvient à exprimer n’importe quelle
grandeur. Le système décimal, appelé aussi système à base de 10, s’est imposé tout
naturellement à l’homme puisque ce dernier possède dix doigts.
Le système décimal est dit à poids positionnels, en ce sens que la valeur d’un chiffre dépend de
sa position (rang) dans le nombre. Par exemple, le nombre 3567 est le résultat de la somme
3. 103 + 5. 102 + 6. 101 + 7. 100 alors le nombre 3567 est écrit dans le système de numération
décimal ou encore système à base 10.
D’une façon générale, dans un système de numération à base b, un nombre N de base b sera
décomposable en fonction des puissances entières de b tel que :
i=n
N b = ∑ a i bi
i =0

où a i est un chiffre tel que 0 ≤ a i ≤ b − 1 , les i sont des entiers positifs et n est l’exposant de

b du chiffre de poids fort. Les bi sont appelés poids ou rang et indique la grandeur de la
quantité représenté.

Enseignant : M. SBIHI 1/15


CHAPITRE I SYSTEMES DE NUMERATION - ARITHMETIQUE BINAIRE - CODES

Exemple : (3567)10 = 3 × 103 + 5 × 102 + 6 × 101 + 7 × 100

On note que le chiffre 3 est celui qui a le poids le plus élevé (MSB) et le chiffre 7 a le poids le
plus faible (LSB).

I-2- Système binaire

Le système de numération binaire n’est qu’une autre façon de représenter les quantités. A
première vue, ce système semble plus complexe que le décimal ; il est pourtant plus simple
puisqu’il ne possède que deux chiffres. Le binaire est donc un système à base de 2 dont les
deux chiffres binaires, ou bits, sont le 1 et le 0.
La position du 1 ou du 0 dans un nombre binaire indique son poids positionnel et détermine sa
valeur dans le nombre, tout comme nous l’avons vu pour le système décimal. Dans un nombre
binaire, les poids positionnels correspondent à des puissances de deux.
Exemple : (1101,011) 2 = 1 × 23 + 1 × 2 2 + 0 × 21 + 1 × 20 + 0 × 2 −1 + 1 × 2 −2 + 1 × 2 −3 ; avec 23 le

poids le plus fort et 2−3 le poids le plus faible.


Ils existent deux autres systèmes de numération très répandus dans les circuits numériques. II
s'agit des systèmes de numération octal (base de 8) et hexadécimal (base de 16) qui servent tous
les deux au même but, soit celui de constituer un outil efficace pour représenter de gros
nombres binaires. Comme nous le verrons, ces systèmes de numération ont l'avantage
d'exprimer les nombres de façon que leur conversion en binaire, et vice versa, soit très facile.
Pour chacun des systèmes décimal, binaire, octal et hexadécimal, l’ensemble des symboles
possibles est :
* {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} pour le décimal,
* {0, 1} pour le binaire,
* {0, 1, 2, 3, 4, 5, 6, 7} pour l’octal,
* {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F} pour l’hexadécimal.
Dans un système numérique, il peut arriver que trois ou quatre de ces systèmes de numération
cohabitent, d’où l’importance de pouvoir convertir un système dans un autre.

II- Changement de base

II-1- Nombres entiers positifs


• Conversion d’un nombre de base décimale en un nombre de base b quelconque
La méthode la plus simple de conversion d’un nombre entier décimal en un nombre de base b
est celle de la division par la base b répétée. Par exemple, pour convertir le nombre décimal N

Enseignant : M. SBIHI 2/15


CHAPITRE I SYSTEMES DE NUMERATION - ARITHMETIQUE BINAIRE - CODES

dans la base b, on commence par diviser N par b. Chaque nouveau quotient est ensuite divisé
par b jusqu’à ce que le quotient soit 0. Les restes générés par chacune des divisions forment
le nombre N dans la base b. Le premier reste produit devient le bit de poids le plus faible
(LSB) du nombre N dans la base b, alors que le dernier reste produit devient le bit de poids le
plus fort (MSB).
Exemple :
* Convertissez le nombre (45)10 en son équivalent binaire.
45 2
1 22 2
0 11 2
1 5 2
1 2 2
0 1 2
1 0
(45)10 = (101101)2
* Convertissez le nombre (214)10 en son équivalent hexadécimal.
214 16
6 13 16
13 0
(214)10 = (D6)16
• Conversion d’un nombre de base b quelconque en décimal
Tout nombre écrit dans une base b quelconque peut être transformé en son équivalent décimal
simplement en additionnant les termes obtenus du produit de chaque chiffre par son poids
positionnel.
Exemple :
* Convertissez le nombre (11011)2 en son équivalent décimal.
(11011)2 = 1× 24 + 1× 23 + 0 ×22 + 1× 21 + 1× 20
(11011)2 = (27)10
* Convertissez le nombre (377)8 en son équivalent décimal.
(377)8 = 3 × 82 + 7 × 81 + 7 × 80
(377)8 = (255)10
• Conversion octal–binaire et binaire–octal
La conversion octal – binaire s’effectue en transformant chaque chiffre du nombre octal en son
équivalent binaire de trois chiffres. L’opération inverse consiste à faire avec le nombre binaire
des groupes de trois bits en partant du chiffre de poids le plus faible, puis de convertir ces

Enseignant : M. SBIHI 3/15


CHAPITRE I SYSTEMES DE NUMERATION - ARITHMETIQUE BINAIRE - CODES

triplets en leur équivalent octal ; au besoin on ajoute des zéros à gauche du bit de poids le plus
fort pour obtenir un nombre juste de triplets.
Exemple :
* Convertissez (376)8 en binaire.
3 7 6 Chiffre décimaux
011 111 110 Equivalent binaire
(376)8 = (011111110)2
* Convertissez (1101110011)2 en octal.
001 101 110 011 Triplet
1 5 6 3 Equivalent octal
(1101110011)2 = (1563)8
• Conversion hexadécimal – binaire et binaire - hexadécimal
La conversion hexadécimal – binaire s’effectue en transformant chaque chiffre du nombre
hexadécimal en son équivalent binaire de quatre chiffres. L’opération inverse consiste à faire
avec le nombre binaire des groupes de quatre bits en partant du chiffre de poids le plus faible,
puis on substitue à chaque groupe son chiffre hexadécimal équivalent ; au besoin on ajoute des
zéros à gauche pour obtenir un dernier groupe de 4 bits.
Exemple :
* Convertissez (376)16 en binaire.
3 7 6 Chiffre hexadécimal
0011 0111 0110 Equivalent binaire
(376)16 = (001101110110)2
* Convertissez (11101110011)2 en hexadécimal.
0111 0111 0011 Nombre binaire
7 7 3 Equivalent hexadécimal
(11101110011)2 = (773)16

II-2- Nombres fractionnaires

Exemple : Convertissez le nombre décimal 24,3125 en binaire.


Pour convertir la fraction décimale 0,3125 en binaire, on commence par multiplier 0,3125 par
2. Nous multiplions ensuite chaque nouveau produit ainsi crée par 2, jusqu’à ce que le produit
fractionnaire soit 0 ou que le nombre de décimales désiré soit atteint. Les chiffres reportés ou
retenues, générés par les multiplications, forment le nombre binaire. La première retenue
produite devient le MSB et la dernière retenue devient le LSB.

Enseignant : M. SBIHI 4/15


CHAPITRE I SYSTEMES DE NUMERATION - ARITHMETIQUE BINAIRE - CODES

Retenue
0,3125 × 2 = 0,625 0 MSB
0,625 × 2 = 1,25 1
0,25 × 2 = 0,50 0
0,50 × 2 = 1,00 1 LSB
L’équivalent binaire de (24)10 est (11000)2
L’équivalent binaire de (24,3125)10 est (11000, 0101)2

III- Nombres à virgule flottante

Il faut beaucoup de bits pour représenter des nombres entiers de très grande valeur. Un autre
problème surgit lorsqu’il faut représenter des nombres possédant une partie entier et une partie
fractionnaire, comme 23,5618. Le système des nombres à virgule flottante, qui repose sur le
principe de notation scientifique, permet de représenter des nombres de très grande ou de très
petite valeur et/ou des nombres possédant une partie entier et une partie fractionnaire sans
augmenter le nombre de bits.

Un nombre à virgule flottante, également appelé nombre réel, comprend deux parties et un
signe. La mantisse est la partie qui représente la grandeur du nombre à virgule flottante.
L’exposant est la partie qui désigne la quantité de rangs avec laquelle la virgule décimale ou
binaire est décalée.

Exemple : Soit le nombre entier décimal 241506800.

La mantisse est 0,2415068 et l’exposant est 9. Un entier exprimé en nombre à virgule flottante
doit être normalisé, en ce sens q’il faut déplacer la virgule décimale à la gauche de tous les
chiffres afin que la mantisse devienne un nombre fractionnaire. L’exposant devient alors une
puissance de 10. De cette façon, le nombre à virgule flottante s’écrit :

0,2415068 × 109

Pour les nombres à virgule flottante binaires, le format est défini par la norme ANSI/IEEE
754-1985 selon trois notations : précision simple, précision double et précision étendue. Leur
format est fondamentalement identique, à l’exception du nombre de bits. Les nombres à virgule
flottante de précision simple possèdent 32 bits, ceux de précision double ont 64 bits, alors que
les nombres de précision étendue comportent 80 bits.

Enseignant : M. SBIHI 5/15


CHAPITRE I SYSTEMES DE NUMERATION - ARITHMETIQUE BINAIRE - CODES

Nombres binaires à virgule flottante de précision simple :

Dans la notation du standard de précision simple pour les nombres binaires, le bit de signe (S)
est celui situé le plus à gauche, l’exposant (E) inclut les 8 bits suivants et la mantisse ou partie
fractionnaire (F) comprend les 23 bits de droite, tel qu’illustré ci-dessous.

S Exposant (E) Mantisse (fraction, F)

1 bit 8 bits 23 bits

La virgule binaire de la mantisse ou partie fractionnaire se retrouve à la gauche des 23 bits. En


réalité, la mantisse comporte 24 bits puisque le bit de poids le plus fort de tout nombre binaire
est toujours un 1. Par conséquent, il est de convention que ce 1 occupe cet endroit bien qu’il ne
figure pas dans la position des bits qui nous intéressent.

Les 8 bits de l’exposant représentent un exposant polarisé, obtenu en additionnant 127 à


l’exposant réel. Le but de cette polarisation est de permettre la représentation de nombres de
très grande ou de très petite taille sans recourir à un bit de signe séparé pour les exposants.
L’exposant polarisé offre une échelle de valeurs comprises entre -126 et +128 pour l’exposant
réel.

Exemple : Soit le nombre binaire 1011010010001

Exprimons d’abord ce nombre en le normalisant. Nous obtenons 1 suivi d’un nombre


fractionnaire binaire en déplaçant la virgule binaire de 12 rangs vers la gauche et le multipliant
ensuite par la puissance de 2 appropriée.

1011010010001 = 1,011010010001 × 212

Puisqu’il s’agit d’un nombre positif, le bit de signe (S) est 0. L’exposant polarisé de l’exposant
réel 12, s’obtient en ajoutant 127 (12 + 127 = 139). L’exposant polarisé (E) est donc représenté
par le nombre binaire 10001011. La mantisse est la partie fractionnaire (F) du nombre binaire
0,011010010001 dans cet exemple. Comme il y a toujours un 1 à la gauche de la virgule binaire
dans l’expression de puissance de 2, il n’est pas inclus dans la mantisse. Le nombre à virgule
flottante complet est donc :

S E F

0 10001011 01101001000100000000000

Pour déterminer la valeur d’un nombre binaire déjà écrit en notation à virgule flottante, on
utilise l’approche générale exprimée dans la formule suivante :

Enseignant : M. SBIHI 6/15


CHAPITRE I SYSTEMES DE NUMERATION - ARITHMETIQUE BINAIRE - CODES

Nombre = (-1)S(1+F)(2E - 127)


Exemple :

1 10010001 10001110001000000000000

Nombre = (-1)1(1,10001110001)(2145 - 127) = - 1100011100010000000

IV- Arithmétique binaire

IV- 1- Addition binaire


L’addition binaire s’effectue avec les mêmes règles qui s’appliquent à l’addition des nombres
décimaux. Cependant, il n’y a que quatre cas qui peuvent survenir lorsqu’on additionne deux
chiffres binaires et cela quel que soit le rang (cf. table 1). On commence par additionner les bits
correspondant au plus petits poids, les 1 de retenue sont considérés comme des nouveaux bits et
additionnés avec ceux de la colonne de poids juste supérieur.
Table 1 :
0+0=0
0+1=1
1+0=1
1+1=0 avec 1 de retenue
Exemple : Effectuer la somme de (11,011)2 et (10,110)2
11,011
+ 10,110
110,001

IV- 2- Ecriture des nombres signés

Comme les calculateurs numériques traitent aussi bien les nombres négatifs que les nombres
positifs, une certaine convention est adoptée pour représenter le signe du nombre (+ ou -).
Généralement, un autre bit appelé bit de signe est ajouté au nombre. La convention la plus
courante consiste à attribuer au nombre positif le bit de signe 0 et au nombre négatif le bit de
signe 1. Le nombre est donc stocké en mémoire en deux parties dont l’une est réservée à la
valeur absolue du nombre en binaire et l’autre, placée à gauche, au bit de signe.
Exemple : Nombre décimal +25 exprimé en un nombre binaire signé de 8 bits avec la notation
signe-grandeur.

0 0 0 1 1 0 0 1

Bit de signe grandeur

Enseignant : M. SBIHI 7/15


CHAPITRE I SYSTEMES DE NUMERATION - ARITHMETIQUE BINAIRE - CODES

Le nombre décimal -25 s’exprime comme suit :

1 0 0 1 1 0 0 1

Bit de signe grandeur

Bien que cette notation signe–grandeur soit directe, les calculateurs numériques n’y ont
généralement pas recours, en raison de la complexité des circuits qui matérialisent cette
notation d’où l’utilisation dans ces machines de la notation en complément à 2 pour
représenter les nombres signés.

IV-3- Notation en complément à 1

Le complément à 1 d’un nombre binaire s’obtient en changeant chaque 0 par 1 et chaque 1 par
0. Autrement dit, en complémentant chaque bit du nombre.
Exemple :
1 0 1 1 0 0 1 0 Nombre binaire
0 1 0 0 1 1 0 1 Complément à 1

IV-4- Notation en complément à 2

Le complément à 2 d’un nombre binaire s’obtient en prenant le complément à 1 de ce nombre


et en ajoutant 1 au bit de son rang de poids le plus faible.
Exemple :
10110010 Nombre binaire
01001101 Complément à 1
+ 1 Addition de 1
01001110

Grâce à la notation en complément à 2, les opérations de soustraction deviennent des


opérations d’addition, c’est le cas dans les calculateurs numériques puisqu’ avec les mêmes
circuits s’effectuent des soustractions et des additions.

IV-5- Addition en utilisant le complément à 2

On va considérer un circuit additionneur à deux entrées sur lesquelles sont disponibles deux
mots de quatre bits.

1er cas : deux nombres positifs.


L’addition de deux nombres positifs est immédiate.

Enseignant : M. SBIHI 8/15


CHAPITRE I SYSTEMES DE NUMERATION - ARITHMETIQUE BINAIRE - CODES

Exemple :
6 0. 0110
+ 3 + 0. 0011
9 0.1001

2ème cas : nombre positif et nombre négatif plus petit.

On complémente à 2 le nombre négatif et on effectue la somme des deux nombres en ajoutant


la retenue de la somme des bits de poids le plus fort au bits de signe. La retenue de la somme de
ces derniers est ignorée.
Exemple :
9 0.1001
-3 + 1.1101 Complément à 2 de 0011
6 1 0.0110
retenue à rejetée

3ème cas : nombre positif et nombre négatif plus grand.

On effectue l’opération de la même manière que dans le deuxième cas, seulement que le
résultat sera négatif. Alors pour avoir le résultat final, on procède à la complémentation à 2 du
résultat de l’addition codée.
Exemple :
3 0.0011
-7 + 1.1001 Complément à 2 de 0111
-4 1.1100
Le résultat final de l’opération d’addition est le complément à 2 de 1.1100 qui est 1.0100.

4ème cas : les deux nombres sont négatifs

C’est le même cas que précédemment, le résultat de la somme codée sera négatif d’où sa
complémentation à 2 pour avoir le résultat final.
Exemple :
-3 1.1101 Complément à 2 de 0011
- 7 + 1.1001 Complément à 2 de 0111
- 10 1.0110
Le résultat final de l’opération d’addition codée est le complément à 2 de 1.0110 qui est
1.1010.

Enseignant : M. SBIHI 9/15


CHAPITRE I SYSTEMES DE NUMERATION - ARITHMETIQUE BINAIRE - CODES

Remarque :

Dans chacun des exemples d’addition et de soustraction que l’on vient d’étudier, les nombres
que l’on a additionnés étaient constitués à la fois d’un bit de signe et de 4 bits de grandeur. Les
réponses aussi comportaient un bit de signe et 4 bits de grandeur. Toute retenue faite sur le bit
de sixième rang était rejetée. De même, il faut que le résultat de l’opération reste inférieur
strictement à (16)10 pour ne pas avoir un dépassement de capacité.
Exemple :
9 0.1001
+8 0.1000
1 0001
bit de signe

Le bit de signe de la réponse est celui d’un nombre négatif, ce qui est manifestement une
erreur. La réponse devrait être +17. Etant donné que la grandeur est 17, il faut plus de 4 bits
pour l’exprimer, et il y a donc un dépassement sur le rang du bit de signe.

V- Les principaux codes

Les circuits numériques fonctionnent avec des nombres binaires exprimés sous une forme ou
sous une autre durant leurs opérations internes, malgré que le monde extérieur soit un monde
décimal. Cela implique qu’il faut effectuer fréquemment des conversions entre les systèmes
binaire et décimal. On peut avoir plusieurs combinaisons de bits 0 et 1 pour une même valeur
décimale dont chaque combinaison correspond à un code.

V-1- Code binaire pur

Quand on fait correspondre à un nombre décimal son équivalent binaire, on dit qu’on a fait un
codage binaire pur.

Nbre Code binaire Nbre Code binaire


décim 8 4 2 1 décim 8 4 2 1
0 0 0 0 0 8 1 0 0 0
1 0 0 0 1 9 1 0 0 1
2 0 0 1 0 10 1 0 1 0
3 0 0 1 1 11 1 0 1 1
4 0 1 0 0 12 1 1 0 0
5 0 1 0 1 13 1 1 0 1
6 0 1 1 0 14 1 1 1 0
7 0 1 1 1 15 1 1 1 1

Enseignant : M. SBIHI 10/15


CHAPITRE I SYSTEMES DE NUMERATION - ARITHMETIQUE BINAIRE - CODES

V-2- Code binaire décimal (DCB)

V-2-1- Généralités
Pour réaliser ces codes, il faut 10 combinaisons différentes de bits 0 et 1 afin de pouvoir
réaliser les 10 symboles du système décimal.
1 seul bit permet 2 combinaisons : 0 ou 1
2 bits permettent 4 combinaisons : 00, 01, 10, 11
4 bits permettent 16 combinaisons : 0000, 0001,…..,1111
La réalisation de 10 combinaison implique donc l’emploi d’au moins 4 bits et il va donc falloir
faire un choix de 10 combinaison parmi les 16 possibles.
Le choix parmi tous les codes possibles est effectué en fonction d’un certain nombre de
critères.

• Conditions de poids : codes pondérés


Le code du nombre N est pondéré si on a :
N = x 4 p 4 + x 3p3 + x 2 p 2 + x1p1

* p1 = 1 pour représenter le 1 décimal dans le code.


* p1 + p 2 + p3 + p 4 ≥ 9 pour représenter le 9 décimal dans le code.

• Conditions de complément : codes autocomplémentaires

Un code est autocomplémentaire si le complément à 9 d’un chiffre décimal est obtenu en


échangeant 0 et 1 dans la représentation binaire. Pour qu’un code soit autocomplémentaire, il
faut que tout chiffre et son complément à 9 aient leur représentation symétrique par rapport au
milieu de la liste des représentations.

V-2-2- Principaux codes binaires décimaux

♦ Code décimal binaire : DCB ou 8.4.2.1


C’est un code pondéré de poids 8, 4, 2, 1, il se présente sous la forme suivante :
Nbre 8 4 2 1
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1

Enseignant : M. SBIHI 11/15


CHAPITRE I SYSTEMES DE NUMERATION - ARITHMETIQUE BINAIRE - CODES

Dans ce code chaque chiffre du nombre décimal doit être codé séparément par un groupe de 4
bits.
Exemple : 2571 s’écrit dans ce code : 0010 0101 0111 0001

Exemple d’opération arithmétique dans ce code :

Exemple 1 : 47 + 35 = 82
0100 0111
+ 0011 0101
0111 1100
+ 1 0110
1000 0010
On rencontre ici un mot codé qui ne correspond pas à une valeur connue ; il s’agit des six
représentations codées de 4 bits interdites ou non valides. Cette représentation est apparue
parce qu’on a additionné deux chiffres dont la somme dépasse 9. Pour résoudre ce problème,
on ajoute (6)10 = (0110)2 à ce mot codé inconnu afin de prendre en considération le fait qu’on
saute six représentations codées non valides. Si un report est produit, il sera ajouté à la somme
DCB des chiffres du rang suivant.
Exemple 2 : 95 + 83 = 178
1001 0101
+ 1000 0011
1 0001 1000
+ 0110
0001 0111 1000
Dans le cas où l’addition de deux chiffres donne un report (celui-ci est additionné avec le
chiffre de rang immédiatement à gauche), on ajoute une correction de (0110)2 au résultat de la
somme.
♦ Code majoré de trois (DCB+3)
Le code majoré de trois d’un nombre décimal se trouve de la même manière que le code DCB,
sauf qu’on ajoute trois à chaque chiffre décimal avant d’opérer la conversion.
Nbre Nbre
8 4 2 1 8 4 2 1
décim décim
0 0 0 1 1 5 1 0 0 0
1 0 1 0 0 6 1 0 0 1
2 0 1 0 1 7 1 0 1 0
3 0 1 1 0 8 1 0 1 1
4 0 1 1 1 9 1 1 0 0

Enseignant : M. SBIHI 12/15


CHAPITRE I SYSTEMES DE NUMERATION - ARITHMETIQUE BINAIRE - CODES

On remarque que ce code est autocomplémentaire à 9, donc symétrique. On l’obtient en


éliminant des 16 premières combinaisons du système binaire naturel les trois premières et les
trois dernières.
Exemple d’opération arithmétique dans ce code :
Exemple 1 : avec retenue
8 1011
+6 + 1001
14 0001 0100
+ 0011 0011
0100 0111
Dans une addition en DCB+3, si on a une retenue on ajoute le chiffre 3 codé en binaire au
résultat de l’addition.
Exemple 2 : sans retenue
5 1000
+3 + 0110
8 1110
+1101 Complément à 2 de 0011
1 1011
débordement à éliminer
Dans ce cas où on n’a pas de retenue, on retranche le chiffre 3 au résultat de la somme, c'est-à-
dire qu’on ajoute le complément à 2 du chiffre 3. La retenue de la somme est à rejeter.

♦ Code décimal binaire Aiken (DCBA)

C’est un code pondéré de poids 2 ,4 , 2 ,1 et aussi autocomplémentaire à 9.

Nbre 2 4 2 1
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 1 0 1 1
6 1 1 0 0
7 1 1 0 1
8 1 1 1 0
9 1 1 1 1

Enseignant : M. SBIHI 13/15


CHAPITRE I SYSTEMES DE NUMERATION - ARITHMETIQUE BINAIRE - CODES

V-3- Code Gray

Le code gray est un code non pondéré et ne convient pas aux calculs arithmétiques, en ce sens
qu’il n’y a pas de poids spécifiques qui correspondent aux positions des bits. Ce code est
caractérisé par le fait qu’en passant d’une combinaison à la suivante un seul bit change de
valeur, ce qui minimise les erreurs lors du codage. Comme par exemple les codeurs à
positionnement rotatif, où la prédisposition aux erreurs augmente selon la quantité de bits
changés entre deux nombres consécutifs d’une séquence.
Le tableau suivant énumère le code gray de 4 bits pour les nombres décimaux de 0 à 15.

Nbre Code Gray Nbre Code Gray


0 0 0 0 0 8 1 1 0 0
1 0 0 0 1 9 1 1 0 1
2 0 0 1 1 10 1 1 1 1
3 0 0 1 0 11 1 1 1 0
4 0 1 1 0 12 1 0 1 0
5 0 1 1 1 13 1 0 1 1
6 0 1 0 1 14 1 0 0 1
7 0 1 0 0 15 1 0 0 0

• Conversion binaire-code gray

Pour effectuer la conversion d’un nombre binaire en code gray, on procède selon les règles
suivantes :
1- le bit de poids le plus fort du code gray, situé à l’extrême gauche, est le même que le
MSB correspondant au nombre binaire.
2- En vous déplaçant de gauche à droite, additionnez chaque paire de bits adjacente du
code binaire pour obtenir le bit suivant du code gray. Rejetez les retenues.
Exemple :
1 0 1 1 0 Binaire
1 1 1 0 1 Code Gray

• Conversion code gray-binaire

Pour effectuer la conversion d’un nombre codé en gray en code binaire, on procède selon les
règles suivantes :
1- Le bit de poids le plus fort du code binaire, situé à l’extrême gauche, est identique au bit
correspondant au code gray.
2- Additionnez chaque nouveau bit de code binaire crée au bit de code gray adjacent
suivant (situé immédiatement à droite) en rejetant les retenues.

Enseignant : M. SBIHI 14/15


CHAPITRE I SYSTEMES DE NUMERATION - ARITHMETIQUE BINAIRE - CODES

Exemple :
1 1 0 1 1 Code Gray
1 0 0 1 0 Binaire

V-4- Code ASCII : American standard code for Information Interchange

C’est un code alphanumérique universel utilisé dans la plupart des ordinateurs. Ce code
comprend 128 caractères et symboles représentés par un code binaire de 7 bits. En réalité, il
s’agit d’un code à 8 bits dont le MSB est toujours égal à 0. Ce code de 8 bits correspond aux
nombres hexadécimaux de 00 à 7F. Le code ASCII sert à coder l’information alphanumérique
transmise entre un ordinateur et ses périphériques d’entrée/sorties comme les écrans de
visualisation ou les imprimantes. Un ordinateur recourt aussi à ce code pour stocker les
informations envoyées par l’opérateur depuis son clavier.

V-5- Détection d’erreur au moyen de la méthode de parité

Un grand nombre de système utilisent un bit de parité pour la détection d’erreurs. Tout groupe
de bits comporte un nombre pair ou impair de bit 1. Un bit de parité est associé à un groupe de
bits pour que le nombre total de 1 dans un groupe soit toujours pair ou toujours impair. Un bit
de parité paire donne un total de 1 pair et un bit de parité impaire donne un total de 1 impair.
Un système donné fonctionne avec une parité paire ou une parité impaire, il ne peut pas utiliser
les deux. Par exemple, dans un système fonctionnant avec une parité paire, chaque groupe de
bits reçu est contrôlé pour s’assurer que le total de 1 dans ce groupe correspond à un nombre
pair. Si ce nombre est impair, une erreur s’est produite.
Le tableau suivant illustre comment les bits de parité sont associés aux nombres codés en DCB
pour les parités paire et impaire.

Parité paire Parité impaire


Bit de parité DCB Bit de parité DCB
0 0000 1 0000
1 0001 0 0001
1 0010 0 0010
0 0011 1 0011
1 0100 0 0100
0 0101 1 0101
0 0110 1 0110
1 0111 0 0111
1 1000 0 1000
0 1001 1 1001

Enseignant : M. SBIHI 15/15

Vous aimerez peut-être aussi