Chapitre 1
Chapitre 1
Chapitre 1
Chapitre 1
SYSTEMES DE NUMERATION ET CODAGE DES INFORMATIONS
1. OBJECTIFS
➢ Traiter en détails les différents systèmes de numération : systèmes décimal, binaire,
octal et hexadécimal ainsi que les méthodes de conversion entre les systèmes de
numération.
➢ Traiter les opérations arithmétiques sur les nombres.
➢ Etudier plusieurs codes numériques tels que les codes DCB, GRAY et ASCII.
2. SYSTEMES DE NUMERATION
Pour qu’une information numérique soit traitée par un circuit, elle doit être mise sous forme
adaptée à celui-ci. Pour cela Il faut choisir un système de numération de base B (B un nombre
entier naturel ≥ 2).
Tout nombre N peut se décomposer en fonction des puissances entières de la base de son
système de numération. Cette décomposition s’appelle la forme polynomiale du nombre N et
qui est donnée par :
Avec :
Exemple : Base
(93452)10
Exemples :
(10011.1101)2= 1*24 + 0*23 + 0*22 + 1*21 + 1*20 + 1*2-1 + 1*2-2 + 0*2-3 + 1*2-4
Le bit le plus à gauche est le bit de poids fort (MSB : Most Significant Bit), le bit le plus à droite est le
bit de poids faible (LSB : Least Significant Bit).
Exemples :
Le système octal ou base 8 comprend huit chiffres qui sont {0, 1, 2, 3, 4, 5, 6, 7}. Les
chiffres 8 et 9 n’existent pas dans cette base. Ecrivons à titre d’exemple les nombres 45278 et
1274.6328 :
Exemples :
Exemples :
3. CHANGEMENT DE BASE
Il s’agit de la conversion d’un nombre écrit dans une base B1 à son équivalent dans une
autre base B2
La conversion vers la base 10 est la plus simple. Il suffit de calculer la valeur du polynôme.
Exemples :
➢ Décimal entier
Pour convertir un nombre décimal entier en un nombre de base B quelconque, il faut faire
des divisions entières successives par la base B et conserver à chaque fois le reste de la division.
On s’arrête l’lorsqu’on obtient un résultat inferieur à la base B. Le nombre recherche N dans la
base B s’écrit de la gauche vers la droite en commençant par le dernier résultat allant jusqu’au
premier reste.
Exemples :
84 2
0 42 2
0 21 2 110 8
1 10 2 6 13 8
0 5 2 5 1
1 2 2 Lecture du
Lecture du résultat
0 1
résultat
(84)10=(1010100)2 (110)10=(156)8
105 4 B
1 26 4
827 16
2 6 4
Lecture du 11 51 16
résultat 2 1 3 3
Lecture du
résultat
Exemples :
1 14 2 0.5 * 2 = 1.0
0 7 2
1 3 2
Lecture du 1 1
Résultat de la partie entière
(58.625)10=(111010.101)2
Remarque:
Parfois en multipliant la partie fractionnaire par la base B on n’arrive pas à convertir toute la
partie fractionnaire. Ceci est dû essentiellement au fait que le nombre à convertir n’a pas un
équivalent exact dans la base B et sa partie fractionnaire est cyclique.
Exemple : (0.15)10= (? )2
0.15 *2 = 0.3
0.3 *2 = 0.6
0.6 *2 = 1.2
0.2 *2 = 0.4
0.4 *2 = 0.8
0.8 *2 = 1.6
0.6 *2 = 1.2
0.2 *2 = 0.4
0.4 *2 = 0.8
0.8 *2 = 1.6
(0.15)10 = (0.0010011001)2 On dit que le nombre (0.15)10 est cyclique dans la base 2 de
période 1001.
Pour faire La conversion d’un nombre d’une base quelconque B1 vers une autre base B2
il faut passer par la base 10. Mais si la base B1 et B2 s’écrivent respectivement sous la forme
d’une puissance de 2 on peut passer par la base 2 (binaire).
Base tétral (base 4): 4=22 chaque chiffre tétral se convertit tout seul sur 2 bits. Base octale (base
8): 8=23 chaque chiffre octal se convertit tout seul sur 3 bits. Base hexadécimale (base 16):
16=24 chaque chiffre hexadécimal se convertit tout seul sur 4 bits.
Exemples :
(6 5 3 0)8 = (110 101 011 000)2 (101 010 100 111 000)2 = (5 2 4 7 0)8
(9 A 2 C)16 = (1001 1010 0010 1100)2 (1101 1000 1011 0110)2 =(D 8 B 6)16
(120)3 = ( ? )2
B3 → B10 : (120)3 = 1 x 32 + 2 x 31 + 0 x 30= (15)10
B10 → B2 : (15)10 = (1111)2
(120)3 = (1111)2
(213)4 = ( ? )8
B4 → B2 : (213)4 = (100111)2
B2 → B8 : (100111)2 = (47)8
(213)4 = (47)8
(B67)16 = ( ? )4
B16 → B2 : (B67)16 = (1011 0110 0111)2
B2 → B4 : (10 11 01 10 01 11)2 = (2 3 1 2 1 3)4
(B67)16 = (231213)4
4.1. Addition
Base Binaire
11001001 1101110
+ 110101 + 100010
= (11111110)2 = (10010000)2
Base Tétrale
32210 20031
+ 330 + 1302
= (33200)4 = (21333)4
Base Octale
63375 5304
+ 7465 + 6647
= (73062)8 = (14153)8
Base Hexadécimale
89A27 5304
+ EE54 + CC3B
= (9887B)16 = (11F3F)16
4.2. Soustraction
Base Binaire
1110110 1000001001
- 110101 - 11110011
= (1000001)2 = (100010110)2
Base Tétrale
13021 2210
- 2103 - 1332
= (10312)4 = (212)4
Base Octale
52130 145126
- 6643 - 75543
= (43265)8 = (47363)8
Base Hexadécimale
725B2 45DD3
- FF29 - 9BF6
= (62689)16 = (47363)16
4.3. Multiplication
Base Binaire
1110110 1010111
* 11011 * 10011
1110110 1010111
+ 1110110 1010111
0000000 + 0000000
1110110 0000000
1110110 1010111
= (110001110010)2 = (11001110101)2
Base Tétrale
3021 13320
* 113 * 210
21123 000000
+ 3021 13320
3021 + 3330
= (1020033)4 = (1132200)4
Base Octale
7506 4327
* 243 * 651
26722 4327
+ 36430 26063
17214 + 32412
= (2334622)8 = (3526357)8
Base Hexadécimale
A928 6340
* 7D3 * B51
1FB78 6340
+ 89708 1F040
4A018 + 443C0
= (52B83F8)16 = (4632740)16
4.4. Division
Base Binaire Base Tétrale
110000000110 1110010 300012 1302
- 1110010 - 1302
(011011)2 (123)4
10011100 10321
- 1110010 - 3210
0010101011 11112
- 1110010 - 11112
00000
1110010
- 1110010
0000000
164 158
- 164 - 158
000 000
La plupart des dispositifs numériques traitent également les nombres négatifs. Le signe (+ )
ou (-) est identifié par un bit, dit le bit de signe et le nombre ainsi formé est dit signé .
*0 : positif
Bit de signe n-1 bits *1 : négatif
Pour un dispositif numérique, par exemple, qui travaille sur 4 bits, on peut représenter 24=16
nombres différents. Deux possibilités s’offrent :
➢ Les 16 nombres seront considérés comme des entiers non signés. On aura donc 16
nombres positifs allant de 0 à 15.
➢ Les 16 nombres seront considérés comme des entiers signés. La marge des nombres
signés se diffère selon la façon de représentation des nombres négatifs.
Le premier bit indique le signe : 0 pour le signe + et 1 pour le signe -. Le reste des bits
représente la valeur absolue (en base 2). Par exemple avec 3 bits on représente les
nombres :
+ 3 est représenté par 0 1 1 - 3 est représenté par 1 1 1
+ 2 est représenté par 0 1 0 - 2 est représenté par 1 1 0
+ 1 est représenté par 0 0 1 - 1 est représenté par 1 0 1
+ 0 est représenté par 0 0 0 - 0 est représenté par 1 0 0
En général, le complément à 1 d’un nombre x écrit sur n bits est obtenu en complémentant
chacun des bits. On a alors : CR(x)+ x=1111…111=2n-1
Exemple :
6. CODAGE DE L’INFORMATION
L'opération qui établit une correspondance entre une donnée quelconque (des nombres,
des lettres ou des mots un groupe spécial de symboles) en une grandeur binaire s'appelle le
codage (ou encodage). Le codage est une application bijective. L'application inverse est appelée
le décodage. L'opération qui consiste à transposer une grandeur binaire, donnée dans un code
A, en une autre grandeur binaire, équivalente dans un code B, s'appelle le transcodage dans
l'ordinateur, il faut que cette dernière soit codée en binaire.
Base 10
Codage Codage
Décodage Décodage
Base B1 Base B2
Transcodage
Le codage des informations se fait au moyen d’un circuit combinatoire appelé Codeur.
Le décodage des informations se fait au moyen d’un circuit combinatoire appelé
Décodeur.
Ces codes présentés précédemment sont des codes pondérés dont à une base donnée
(B2, B10, B16), chaque bit est affecté d'un poids proportionnel à sa position. Le système de
numération binaire est considéré comme un code binaire naturel, il permet en effet
de représenter des nombres sous forme binaire. Pour des nombres binaires à un grand nombre
de bits, la manipulation devient difficile. Pour cela, on utilise le code octal ou hexadécimal. La
majorité des calculateurs utilisent en effet le codage hexadécimal pour représenter des nombres
binaires.
Exemples :
(9 4 2 7)10 = (1001 0100 0010 0111)DCB (6 8 0 1)10 = (0110 1000 0000 0001)DCB
Méthode 1
Méthode 2
Principe :
(6)10=(?)BR (10)10=(?)BR
+ + + + +
(6)10 = ( 1 1 0 )BN (10)10 = ( 1 0 1 0 )BN
1 1 1
10 1
1 0 1 1 1 1 1
(6)10=(110)BN=(101)BR (10)10=(1010)BN=(1111)BR
Remarque
Pour Converser du Binaire Réfléchi vers le Binaire Naturel on procède comme suit :
• On conserve, systématiquement, le bit le plus à gauche
• Puis on additionne le bit BBR trouvé avec le bit suivant Bn-1
* Le bit BBR-1 reçoit le B0 du résultat
• On poursuit le même raisonnement jusqu'au bit b0
(13)10= (1011)BR= (?)BN (10)10 (1111)BR=(?)BN
(10)10 = ( 1 1 1 1 )BR
(13)10 = ( 1 0 1 1)BR + 10 + 1 + 10
+ 1 + 10 + 1
1 0 1 0
1 1 0 1
(13)10=(1011)BR=(1101)BN (10)10=(1111)BR=(1010)BN
Chaque code est défini par 3 bits d’ordre supérieur b6b5b4 et 4 bits d’ordre inferieur b3b2b1b0
Exemple :