• Aucun résultat trouvé

CANCNA Représentation binaire

N/A
N/A
Protected

Academic year: 2022

Partager "CANCNA Représentation binaire"

Copied!
5
0
0

Texte intégral

(1)

L'électronique analogique utilise pour traiter les informations une tension (parfois un courant) dont l'amplitude (parfois la fréquence ou la phase) est proportionnelle à la grandeur à gérer. Cette méthode reste très sensible aux perturbations de toutes sortes (ondes électromagnétiques, dispersion de valeur des composants etc...).

Pour s'affranchir de ce problème, en électronique numérique les tensions n'ont que deux états : le niveau logique 0 (en général 0 volts) et le niveau logique 1 (5 volts par exemple).

Les grandeurs physiques à traiter étant souvent analogiques (température, pression etc...), on utilise un convertisseur analogique numérique (C.A.N.) pour passer de l'analogique vers le numérique et un convertisseur numérique analogique (C.N.A.)pour l'opération inverse. Pour représenter en numérique un signal analogique, on doit alors véhiculer sur plusieurs "fils", regroupés sur un bus, des signaux binaires appelés bits (contraction de binary digit : chiffre binaire). L'ensemble des bits forme un mot binaire. Ces mots ont une longueur de 4, 8, 16, 32 bits ou plus dans le cas de systèmes très puissants. Un mot de 8 bits est appelé un octet (byte en anglais, à ne pas confondre avec bit)

bus de 8 bits tension

analogique d'entrée

tension analogique

de sortie

CAN traitem ent CNA

num érque

Plusieurs codes sont alors possibles pour représenter le nombre. Nous verrons ici les plus utilisés parmi lesquels il est indispensable de connaître le binaire naturel, le binaire codé décimal et l'hexadécimal.

1. Binaire naturel

C'est le code le plus simple. A chaque bit est associé une puissance de 2. Pour obtenir le nombre en décimal, il suffit d'ajouter les puissances de 2 dont le bit est au niveau logique 1.

BINAIRE NATUREL DECIMAL

bit de poids fort

a3 : 23=8 a2 : 22=4 a1 : 21=2

bit de poids faible

a0 : 20=1

0 0 0 0 0

0 0 0 1 1

0 0 1 0 2

0 0 1 1 3

0 1 0 0 4

0 1 0 1 5

0 1 1 0 6

0 1 1 1 7

1 0 0 0 8

1 0 0 1 9

1 0 1 0 10

1 0 1 1 11

1 1 0 0 12

1 1 0 1 13

1 1 1 0 14

1 1 1 1 15

(2)

Le bit de poids fort est souvent désigné par les lettres MSB (Most Significant Bit) et le bit de poids faible par les lettres LSB (Less Significant Bit).

Ce code est utilisé par les CNA et CAN unipolaires (c'est à dire ne traitant que des signaux positifs), par les microprocesseurs pour gérer les adresses mémoire etc...

D’un point de vue mathématique, la conversion du décimal vers le binaire peut se faire par trois méthodes :

- la calculatrice scientifique ;

- additionner des puissances de deux décroissantes en partant de celle juste inférieure au nombre décimal cherché, par exemple 25D=(16+8+1) D =1 1001B ; - effectuer une suite de divisions entières

par 2 du nombre décimal, jusqu’à obtenir 0 ; le résultat étant donné par les restes des divisions, le dernier reste correspondant au poids fort (voir ci- contre).

25 2

1 12 2

0 6 2

0 3 2

1 1 2

1 0

sens de lecture

2. Binaire codé décimal

Le code précédent n'est pas très pratique dès qu'il s'agit d'afficher le résultat d'un calcul par exemple.

On préfère alors regrouper les bits par 4, chaque groupe correspondant à un chiffre du nombre écrit en décimal.

B.C.D. DECIMAL

a7 a6 a5 a4 a3 a2 a1 a0

0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 1 1

0 0 0 0 0 0 1 0 2

0 0 0 0 0 0 1 1 3

0 0 0 0 0 1 0 0 4

0 0 0 0 0 1 0 1 5

0 0 0 0 0 1 1 0 6

0 0 0 0 0 1 1 1 7

0 0 0 0 1 0 0 0 8

0 0 0 0 1 0 0 1 9

0 0 0 1 0 0 0 0 10

0 0 0 1 0 0 0 1 11

0 0 0 1 0 0 1 0 12

0 0 0 1 0 0 1 1 13

. . . .

0 0 1 1 0 1 0 1 35

. . . .

1 0 0 1 1 0 0 1 99

Même si le bus est moins bien utilisé (avec quatre bits on ne représente plus que dix valeurs au lieu de seize précédemment) les problèmes de décodage pour un affichage par exemple en sont

(3)

3. Complément à deux

Les codes précédents ne peuvent représenter de nombres négatifs ; de plus la soustraction de deux nombres (même si le résultat est positif) reste une opération fastidieuse. Pour ces raisons, les calculs algébriques effectués avec un microprocesseur utilisent le code complément à deux mieux adapté.

Le tableau ci-dessous donne un exemple de nombre en complément à deux sur quatre bits.

Complément

à 2 Décimal a3 a2 a1 a0

1 0 0 0 -8 1 0 0 1 -7 1 0 1 0 -6 1 0 1 1 -5 1 1 0 0 -4 1 1 0 1 -3 1 1 1 0 -2 1 1 1 1 -1

0 0 0 0 0

0 0 0 1 1

0 0 1 0 2

0 0 1 1 3

0 1 0 0 4

0 1 0 1 5

0 1 1 0 6

0 1 1 1 7

On peut remarquer que le bit de poids fort indique le signe du nombre (1 pour négatif et 0 pour positif) ; la représentation sera donc différente si on change le nombre de bits. Pour les nombres positifs les codes complément à 2 et binaire naturel sont identiques. Pour les nombres négatifs, on passe du binaire naturel au complément à 2 en complémentant le nombre (c'est à dire en remplaçant les 1 par des 0 et réciproquement) puis en ajoutant 1. Avec ce code les soustractions s'effectuent avec les mêmes règles que les additions.

4. Binaire décalé

Afin de garder une structure matérielle relativement simple, on utilise ce code dans les CAN bipolaires pour représenter les nombres négatifs. Le principe consiste, comme le nom l'indique, à décaler le binaire naturel

(4)

Binaire décalé Décimal a3 a2 a1 a0

0 0 0 0 -8 0 0 0 1 -7 0 0 1 0 -6 0 0 1 1 -5 0 1 0 0 -4 0 1 0 1 -3 0 1 1 0 -2 0 1 1 1 -1

1 0 0 0 0

1 0 0 1 1

1 0 1 0 2

1 0 1 1 3

1 1 0 0 4

1 1 0 1 5

1 1 1 0 6

1 1 1 1 7

Remarque : sur une même carte électronique, on peut trouver ces différents codes utilisés. Par exemple un CNA convertit une tension analogique en binaire naturel décalé et envoie l'information à un microprocesseur qui pour faire les calculs passe en code complément à 2. Ce microprocesseur gère sa mémoire en binaire naturel.

5. Code hexadécimal

Pour le concepteur de système électronique la lecture d'une suite de 1 et de 0 est extrêmement fastidieuse dès que le nombre dépasse quatre bits. Le problème se pose en particulier lors de l'étude du plan mémoire d'un microprocesseur ou le code utilisé est le binaire naturel avec des mots de seize bits ou plus. Pour simplifier la lecture, on a donc regroupé les bits par quatre et associé un symbole à chaque groupe en fonction de sa valeur. Avec quatre bits il faut donc seize symboles, soit les dix chiffres plus les lettres de A à F.

Code binaire Symbole

hexadécimal Valeur décimale a3 a2 a1 a0

0 0 0 0 0 0

0 0 0 1 1 1

0 0 1 0 2 2

0 0 1 1 3 3

0 1 0 0 4 4

0 1 0 1 5 5

0 1 1 0 6 6

0 1 1 1 7 7

1 0 0 0 8 8

1 0 0 1 9 9

1 0 1 0 A 10

1 0 1 1 B 11

1 1 0 0 C 12

1 1 0 1 D 13

1 1 1 0 E 14

(5)

Afin de ne pas mélanger les représentations décimale et hexadécimale, on associe à celles-ci respectivement l'indice D ou H.

Pour passer d'hexadécimal en décimal, il suffit de multiplier la valeur décimale de chaque symbole à la puissance de seize associée et d'ajouter les résultats.

Exemple : AF3BH = 10 .163 + 15 .162 + 3 . 161 + 11 . 160 = 44859D Pour l'opération inverse, on peut :

- passer par le binaire naturel ; - utiliser la calculatrice scientifique ;

- effectuer une suite de division entière par 16 (voir ci-contre avec 31D=1F H.

31 16

F <= 15 1 16

1 0

sens de lecture

Ce code n'est pas utilisé dans les systèmes électroniques (il n'est pas binaire). Il s'agit simplement d'une facilité de lecture.

Références

Documents relatifs

2 l’´erosion d’une fonction est croissante par rapport ` a l’´el´ement structurant.. 3 l’´erosion d’une image ` a niveaux de gris

d- En supposant qu’il existe une fonction point qui permette de dessiner un point de coordonn´ ees (x, y), d´ efinir une fonction qui dessine la repr´ esentation graphique

CONVERSION binaire, nous pouvons voir les différences entre les systèmes binaires 1 et 2 système binaire en code binaire dans l’exemple 1 (10100110101) alors que le système binaire

Même chose pour des nombres très petits inférieurs au nombre le plus petit représentable sur 64 bits. Arrondi d’un

FR /W WWGVMM /N UMERATI /BINAIRE/D

NOS ORDINATEURS N’UTILISENT PAS LE LANGAGE DÉCIMAL MAIS LE

Transmettre des données d'une machine connectée au réseau A jusqu'à une machine connectée au réseau B à travers l'internet consiste à faire des sauts successifs de routeur en

La notation en virgule flottante permet d’éviter de conserver un grand nombre de chiffres non significatifs tout au long d’un calcul.. On peut coder la suite des