Vous êtes sur la page 1sur 6

COURS 1

CODAGE DUN NOMBRE


SYSTEME DE NUMERATION

1. Base dun systme de numration

1.1 Systme dcimal.


Cest le systme de base 10 que nous utilisons tous les jours. Il comprend dix symboles diffrents :
............................................................................
Exemple du nombre 2356 de ce systme : nous lcrivons N=(2356)10. Lindice 10 indique la base dans
laquelle le nombre est crit.
Ce nombre N peut tre crit sous la forme suivante :
N = ..................................................................................................................
1.2 Systme binaire.
Ce systme dit de base 2 comprend ..................................... . Chacun deux est aussi appel bit ( Binary digIT
= BIT ).
Exemple : N= (10110)2 . Ce nombre N peut tre crit sous la forme suivante :
N = (10110)2 = ........................................................................................................
En utilisant n bits, on peut former .................................. et le plus grand dentre eux ....................... Par
exemple avec un dispositif .........................................................
...............................................................................................................................................................................
........................
1.3 Systme hexadcimal.
Ce systme dit de base 16 comprend ...........................................................................
.........................................................................................
Exemple : N= (AC53)16 . Ce nombre N peut tre sous la forme suivante :
N = (AC53)16 =...........................................................................................................
.......................................................................................................
1.4 Correspondance entre nombres de diffrentes bases.
Dcimal Binaire Hexadcimal Dcimal Binaire Hexadcimal
0 8
1 9
2 10
3 11
4 12
5 13
6 14
7 15

2. Changement de base.
2.1 Conversion dun nombre dcimal en un nombre dune autre base
Mthode : diviser le nombre dcimal convertir par la base b et conserver le reste de la division. Le quotient
obtenu est divis par b et conserver le reste. Il faut rpter lopration sur chaque quotient obtenu.
Les restes successifs sont crits, en commenant par le dernier, de la gauche vers la droite pour former
lexpression de (N)10 dans le systme de base b. Cette mthode est dite Mthode de la division
successives .
Exemple : Convertir N = (3786)10 en binaire N = (111011001010)2.

SPECIALITE ISN 1 LYCEE JANETTI


COURS 1
CODAGE DUN NOMBRE
SYSTEME DE NUMERATION

2.2 Conversion dun nombre hexadcimal en binaire.


Chaque symbole du nombre crit dans le systme hexadcimal est remplac par son quivalent crit dans
le systme binaire.
Exemple : Convertir N = (ECA)16 = (1110 1100 1010)2.
E C A
2.3 Conversion dun nombre binaire en hexadcimal.
Cest linverse de la prcdente. Il faut donc regrouper les 1 et les 0 du nombre par 4 en commenant par
le droite, puis chaque groupe est remplac par le symbole hexadcimal correspondant.
Exemple : Convertir N = (1 1000 0110 1111)2 = ( 1 8 6 F )16.
0001 1000 0110 1111

3. Les autres systmes de codage.


3.1 Code gray ou binaire rflchi.
Cest le systme de codage qui, contrairement au code binaire pur est arrang de manire ne faire changer
dtat quune variable la fois dune ligne lautre.
Code binaire pur Code binaire rflchi
Nombre(10) 23 22 21 20 Nombre(10) a b c d
0 0 0 0 0 0 0 0 0 0
1 0 0 0 1 1 0 0 0 1
2 0 0 1 0 2 0 0 1 1
3 0 0 1 1 3 0 0 1 0
4 0 1 0 0 4 0 1 1 0
5 0 1 0 1 5 0 1 1 1
6 0 1 1 0 6 0 1 0 1
7 0 1 1 1 7 0 1 0 0
8 1 0 0 0 8 1 1 0 0
9 1 0 0 1 9 1 1 0 1

3. Quelques dfinitions.
3.1 Bit.
Le bit est une unit lmentaire dinformation ne pouvant prendre que deux valeurs distinctes ( Notes 0 ou 1
).
3.2 Mot binaire.
En informatique, lunit de traitement de linformation est le mot binaire.
Nota : - Un ensemble de 4 bits ( Ou Mot de 4 bits ) = ...................... .
- Un ensemble de 8 bits ( Ou mot de 8 bits ) = ...................... .

3.3 Octet.
Un octet est compos de 8 bits : 1101 0101
b7 b6 b5 b4 b3 b2 b1 b0
MSB LSB
On distingue :
- Le bits de poids fort b7 ( MSB : Most Significant Bit ).
- Le bits de poids faible b0 (LSB : Least Significant Bit).
3.4 Kilo-octet ( Koctet ) :
Un Kilo-octet est compos de 1024 octets ( 210 = 1024 )

SPECIALITE ISN 2 LYCEE JANETTI


COURS 1
CODAGE DUN NOMBRE
SYSTEME DE NUMERATION

4. Exercices.

a) Convertir ( 9F2 )16 en binaire.


b) Convertir ( 001111110101 ) 2 en hexadcimal.
c) Convertir en dcimal les nombres binaires suivants : 10110 ; 10001101 ; 1111010111.
d) Convertir en binaire les nombres dcimaux suivants : 37 ; 189 ; 205 ; 2313.
e) Convertir en dcimal les nombres hexadcimaux suivants : 92 ; 2C0 ; 37FD.
f) Convertir en hexadcimal les nombres dcimaux suivants : 75 ; 314 ; 25619.
g) Ecrire un programme permettant de convertir un nombre dcimal en un nombre binaire.

SPECIALITE ISN 3 LYCEE JANETTI


COURS 1
CODAGE DUN NOMBRE
SYSTEME DE NUMERATION

5. Reprsentation des nombres relatifs


5.1 Le binaire sign : Reprsentation des nombres positifs et ngatif.

Nous avons vu que le codage des entiers naturels par une srie de bits se fait simplement en prenant
l'criture binaire... quid des entiers ngatifs ? La plus lmentaire, jamais utilise en pratique, consiste
utiliser l'un des bits (le premier) pour reprsenter le signe. Si l'on prend l'exemple d'un octet, on a alors un
bit de signe et sept bits pour coder la valeur absolue (un nombre indpendamment de son signe).

Exemple : Sur 8 bits on peut reprsenter des nombres signs de -127 +127.
Lorsque le bit le plus gauche est un 0, le nombre est ...................... .
0 1 1 1 1 1 1 1
Ici le rsultat est +127 comme en binaire pur.
Lorsque le bit le plus gauche est un 1, le nombre est ...................... .
1 1 1 1 1 1 1 1
Ici le rsultat est -128.

Linconvnient cest que le zro a deux reprsentationset .


C'est pour remdier ces problmes que l'on utilise la notation en complment deux. Les nombres
positifs sont reprsents comme attendu, en revanche les nombres ngatifs sont obtenus de la manire
suivante :
On inverse les bits de l'criture binaire de sa valeur absolue (opration binaire NON), on fait ce
qu'on appelle le complment un,
On ajoute 1 au rsultat (les dpassements sont ignors).
Cette opration correspond au calcul de 2n|x|, o est la longueur de la reprsentation et |x| la valeur
absolue du nombre coder. Ainsi 1 s'crit comme 256-1=255=111111112, pour les nombres sur 8 bits.
Ceci est l'origine du nom de cette opration : "complment 2 puissance n", quasi-systmatiquement
tronqu en "complment 2".
La mme opration effectue sur un nombre ngatif donne le nombre positif de dpart: 2n (2nx) = x.
Pour coder (4) :
On prend le nombre positif 4 :00000100
On inverse les bits : 11111011
On ajoute 1 : 11111100
Le bit de signe est automatiquement mis 1 par l'opration d'inversion. On peut vrifier que cette fois
l'opration 3 + (4) se fait sans erreur :
00000011 + 11111100 = 11111111
Le complment deux de 11111111 est 00000001 soit 1 en dcimal, donc 11111111 = (1) en dcimal.
Le rsultat de l'addition usuelle de nombres reprsents en complment deux est le codage en
complment deux du rsultat de l'addition des nombres. Ainsi les calculs peuvent s'enchaner
naturellement.

Plus gnralement, avec des mots de n bits, on crit les entiers relatifs compris entre -2n-1 et 2n-1-1:

un entier relatif x positif ou nul compris entre 0 et 2n-1-1 est reprsent par lentier naturel x
compris entre 0 et 2n-1-1 ;

un entier relatif x strictement ngatif compris entre 2n-1et 1 est reprsent par lentier naturel
x +2n compris entre 2n-1et 2n - 1.

SPECIALITE ISN 4 LYCEE JANETTI


COURS 1
CODAGE DUN NOMBRE
SYSTEME DE NUMERATION

6. Reprsentation des nombres virgule

6.1 Ils existent deux formats de reprsentations des nombres virgule :

6.1.1 Format virgule fixe


Utilise par les premires machines, possde une partie entire et une partie dcimale spars par une
virgule. La position de la virgule est fixe dou le nom.

Exemple : 54,25(10) ; 10,001(2) ; A1,F0B(16)

6.1.2 Format virgule flottante (utilise actuellement sur machine)

e
Dfini par : m . b
un signe + ou
une mantisse m (en virgule fixe)
un exposant e (un entier relative)
une base b (2,8,10,16,)

6.2 Format virgule fixe

Etant donne une base b, un nombre x est reprsent, en format virgule fixe, par :

x = an-1 an-2 an-3 an-4..a1 a0 , a-1 a-2a-p (b)

an-1 est le chiffre de poids fort (MSB)


a-p est le chiffre de poids faible (LSB)
n est le nombre de chiffre avant la virgule
p est le nombre de chiffre aprs la virgule

Changement de base 2 vers base 10

La valeur de x en base 10 est :

= (10)
Exemple :

101,01(2) =1.22+0.21+1.20+0.2-1+1.2-2 = 5,25(10)

Changement de base 10 vers base 2

Le passage de la base 10 a la base 2 est dfini par :


Partie entire est code sur p bits (division successive par 2)
Partie dcimale est code sur q bits en multipliant par 2 successivement jusqua ce que la partie
dcimale soit nulle ou le nombre de bits q est atteint.

Exemple : 4,25(10) = ? (2) format virgule fixe


4(10) = 100(2)
0,25 = reprsente 2-2
donc 4,25(10) = 100,01(2)

Exercice : Coder 7,875(10) et 5,3(10) avec p = 8 et q = 8

SPECIALITE ISN 5 LYCEE JANETTI


COURS 1
CODAGE DUN NOMBRE
SYSTEME DE NUMERATION

6.3 Format virgule flottante :

Normalisation
x= 1,M . 2Eb
Le signe est code sur 1 bit ayant le poids fort :
Le signe : bit 1
Le signe + : bit 0

Exposant biais (Eb)


Place avant la mantisse pour simplifier la comparaison
Code sur p bits et biaise pour etre positif (ajout de 2p-1-1)
ex : 228 EB= 28+128 si p=8bits/2-82 EB= -82+128 si p=8bits

Mantisse normalise(M)
Normalise : virgule est place apres le bit a 1 ayant le poids fort
M est code sur q bits exemple 11,01 on crit 1,101.2-1 donc M =101

1 bit de signe de M P bits pour Exposant Biais Q bits pour M

Reprsentation dans la norme IEEE(norme actuelle dans les ordinateurs)

Simple prcision sur 32 bits :


1 bit de signe de la mantisse 1 bit de 8 bits pour 23 bits
8 bits pour lexposant signe de M Exposant Biais pour M
23 bits pour la mantisse

Double prcisions sur 64 bits :


1 bit de signe de la mantisse 1 bit de 11 bits pour 52 bits
11 bits pour lexposant signe de M Exposant Biais pour M
52 bits pour la mantisse

7. Exercices.

1) Quels entiers relatifs peut-on reprsenter avec des mots de 8 bits ? Combien sont-ils ? Mme question
avec des mots de 32 bits et 64 bits.
2) Trouver la reprsentation dcimale des entiers relatifs dont la reprsentation binaire sur huit bits est
0111 1111 et 1000 0001.
3) Calculer la reprsentation binaire sur huit bits de lentier relatif 4, puis celle de son oppos. Faire la
mme chose pour -16.
4) Additionner en binaire les nombres dcimaux suivants : 16+23, 120+32.
5) Maintenant sur 8 bits faire laddition de 23+45, 128+150.
6) Soustraire en sur 8 bits 34-45, 120-128

7) Trouver le nombre virgule reprsent par le mot


1100010001101001001111000011100000000000000000000000000000000000
8) Trouver le nombre virgule reprsent par le mot :
0001000000111101001110010101100000000000000000000000000000000000
9) Reprsenter les nombres dcimaux suivants en binaire en utilisant le format virgule fixe et virgule
flottante sur 32 bits : 1,5 ; -1,5 ; 132,875 ; 13245,45

SPECIALITE ISN 6 LYCEE JANETTI