Vous êtes sur la page 1sur 18

Cours de systèmes logiques ISET DU KEF

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).

De nombreux systèmes de numération sont utilisés en technologie numérique. Les plus


utilisés sont les systèmes : Décimal (base 10), Binaire (base 2), Tétral (base 4), Octal (base 8)
et Hexadécimal (base 16).

Le tableau ci-dessous représente un récapitulatif sur ces systèmes :

Décimal Binaire Tétral Octal Hexadécimal


0 0 0 0 0
1 1 1 1 1
2 10 2 2 2
3 11 3 3 3
4 100 10 4 4
5 101 11 5 5
6 110 12 6 6
7 111 13 7 7
8 1000 20 10 8
9 1001 21 11 9
10 1010 22 12 A
11 1011 23 13 B
12 1100 30 14 C
13 1101 31 15 D
14 1110 32 16 E
15 1111 33 17 F

Mr. Mechraoui Ali 1 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

2.1. Représentation polynomiale

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 :

N =anBn + an-1Bn-1 + an-2Bn-2 + …+ a2B2 +


a1B1+ a0B0

Avec :

➢ B : Base du système de numération, elle représente le nombre des différents chiffres


qu’utilise ce système de numération.
➢ ai : un chiffre (ou digit) parmi les chiffres de la base du système de numération.
➢ i : rang du chiffre ai.

2.2. Système décimal (base 10)

Le système décimal comprend 10 chiffres qui sont {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} c’est un


système qui s’est imposé tout naturellement à l’homme.

Exemple : Base

(93452)10

Chiffre de poids fort Chiffre de poids faible

Ecrivons quelques nombres décimaux sous la forme polynomiale :


(5462)10= 5*103 + 4*102 + 6*101 + 2*100
(239.537)10= 2*102 + 3*101 + 9*100 + 5*10-1 + 3*10-2 + 7*10-3

2.3. Système binaire (base 2)


Dans ce système de numération il n’y a que deux chiffres possibles {0, 1} qui sont souvent
appelés bits « binary digit ». Comme le montre les exemples suivants, un nombre binaire peut
s’écrire sous la forme polynomiale.

Exemples :

(111011)2= 1*25 + 1*24 + 1*23 +0*22 + 1*21 + 1*20

(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

Mr. Mechraoui Ali 2 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

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).

2.4. Système Tétral (base 4)


Ce système appelé aussi base 4 comprend quatre chiffres possibles {0, 1, 2, 3}. Un nombre
tétral peut s’écrire sous la forme polynomiale comme le montre les exemples suivant :

Exemples :

(2331)4= 2*43 + 3*42 + 3*41 + 1*40

(130.21)4= 1*42 + 3*41 +1*40+ 2*4-1 + 1*4-2

2.5. Système Octal (base 8)

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 :

(4527)8= 4*83 + 5*82 + 2*81 + 7*80

(1274.632)8= 1*83 + 2*82 + 7*81 +4*80+ 6*8-1 + 3*8-2 + 2*8-3

2.6. Système Hexadécimal (base 16)

Le système Hexadécimal ou base 16 contient seize éléments qui sont {0, 1, 2, 3, 4, 5, 6, 7,


8, 9, A, B, C, D, E, F}. Les chiffres A, B, C, D, E, et représentent respectivement 10, 11, 12,
13, 14 et 15.

Exemples :

(3256)16= 3*163 + 2*162 + 5*161 + 6*160

(9C4F)16= 9*163 + 12*162 + 4*161 + 15*160

(A2B.E1)16= 10*162 + 2*161 + 11*160 +14*16-1+ 1*16-2

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

Mr. Mechraoui Ali 3 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

3.1. Conversion d’un nombre N de base B en un nombre décimal

La conversion vers la base 10 est la plus simple. Il suffit de calculer la valeur du polynôme.

Exemples :

(1011101)2= 1*26 + 0*25 + 1*24 + 1*23 + 1*22 + 0*21+ 1*20= (93)10

(231102)4= 2*45 + 3*44 + 1*43 + 1*42 + 0*41+ 2*40= (2898)10

(7452)8= 7*83 + 4*82 + 5*81+ 2*80= (3882)10

(D7A)16= 13*162 + 7*161 + 10*160 = (3450)10

3.2. Conversion d’un nombre décimal

➢ 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)10= (?)2  (110)10= (?)8

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

Mr. Mechraoui Ali 4 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

 (105)10=( ? )4  (827)10=( ? )16

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

(105)10= (1221)4 (827)10= (33B)16


➢ Décimal à virgule
Pour convertir un nombre décimal à virgule dans une base B quelconque, il faut :
Convertir la partie entière en effectuant des divisions successives par B (comme nous
l’avons vu précédemment).
Convertir la partie fractionnaire en effectuent des multiplications successives par B et
en conservant à chaque fois le chiffre devenant entier.

Exemples :

Conversion du nombre (58,625) en base 2

 Conversion de la partie entière  Conversion de la partie fractionnaire

58 2 0.625 * 2 = 1.25 Lecture du Résultat

0 29 2 0.25 * 2 = 0.5 de la partie fractionnaire

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.

Mr. Mechraoui Ali 5 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

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.

3.3. Autres conversions

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 :

Mr. Mechraoui Ali 6 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

 (1 0 2 2 3)4 = (01 00 10 10 11)2  (11 10 01 00 10)2 = (3 2 1 0 2)4

 (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

Mr. Mechraoui Ali 7 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

4. LES OPERATIONS DANS LES BASES


On procède de la même façon que celle utilisée dans la base décimale, Ainsi, il faut
effectuer l’opération dans la base 10, ensuite convertir le résultat par colonne la base B.

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

Mr. Mechraoui Ali 8 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

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

Mr. Mechraoui Ali 9 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

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

Base Octale Base Hexadécimale


50064 72 24328 2B
- 442 - 22F
(542)8 (D78)16
366 142
- 350 - 12D

164 158
- 164 - 158
000 000

Mr. Mechraoui Ali 10 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

5. REPRESENTATION DES NOMBRES SIGNES


En électronique numérique l’opération fondamentale est l’addition, la soustraction
n’étant rien d’autre que l’addition d’un nombre négatif. Il est donc important d’avoir une
représentation des nombres négatifs qui permette d’effectuer simplement les soustractions.

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é .

S MSB xxxxxxxxxxxxxxxxxxxxxxxxxxx LSB


0 1 1 0 1 0 0 = +(52)10
1 1 1 0 1 0 0 = -(52)10

*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.

On peut identifier trois principales façons de représenter les nombres négatifs:


1- Représentation en valeur absolue et signe (VAS).
2- Représentation par le complément restreint appelé complément à 1.
3- Représentation par le complément vrai appelé complément à 2.

5.1 Représentation par un bit de signe et une valeur absolue

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

Mr. Mechraoui Ali 11 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

L’inconvénient de cette représentation est double ! Il y a deux représentations possibles


pour le nombre 0. Par ailleurs la soustraction vue comme une addition bit à bit ne
fonctionne pas. En effet

000 (+0) 001 (+1)


+ 101 (-1) + 110 (-2)
= 101 (-1) Correct = 111 (-3) Faux
Intervalle des nombres représentables sur n bits :

5.2. Notation en complément à 1 ou complément restreint


Le complément à 1 d'un nombre binaire s'obtient en changeant chaque 0 par un 1 et chaque 1
par un 0. Autrement dit, en complémentant chaque bit du nombre. Voici une illustration de cette
marche à suivre :

1 0 1 1 0 1 nombre binaire initial


0 1 0 0 1 0 complément de chaque bit pour obtenir le complément à 1
=> On dit que le complément à 1 de 101101 est 010010.

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 :

+ 3 est représenté par 0 1 1 - 3 est représenté par 1 0 0

+ 2 est représenté par 0 1 0 - 2 est représenté par 1 0 1

+ 1 est représenté par 0 0 1 - 1 est représenté par 1 1 0

+ 0 est représenté par 0 0 0 - 0 est représenté par 1 1 1

Il y a toujours l’inconvénient de deux représentations pour le chiffre 0.

Mr. Mechraoui Ali 12 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

- Intervalle des nombres représentables en complément à 1 sur 8 bits :


10000000 11111111 00000000 01111111
-12710 -010 010 12710

5.3. Représentation par le complément à 2 ou complément vrai (CV)


Le complément vrai d’un nombre s’obtient en ajoutant 1 au complément restreint
CV (x) =CR(x) +1. On a alors CV (x) + x = 2n et les nombres représentables.
Le complément à 2 est très largement utilisé car c'est la représentation naturelle des nombres
négatifs. Prenons l’exemple suivant :

101101 équivalent binaire de 45


010010 inversion de chaque bit pour obtenir le complément à 1

+ 1 addition de 1 pour obtenir le complément à 2


= 010011 le complément à 2 du nombre binaire initial
Avec n =3bits :
+ 3 est représenté par 0 1 1 - 3 est représenté par 1 0 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 1 1
+ 0 est représenté par 0 0 0 - 4 est représenté par 1 0 0
Par rapport à la représentation en complément à 1 il n’y a plus qu’une seule représentation pour
le nombre 0 ce qui permet de libérer la combinaison 1 0 0 pour représenter – 4. En effet 4 = 100
donc - 4 = CV (4) = 011+1 = 100.

- Intervalle des nombres représentables en complément à 1 sur 8 bits :


10000000 11111111 00000000 01111111

-12810 -110 010 12710

Pour Conclure Cà2


Cà1+1
Positif Négatif
Cà1+1
Cà2

Mr. Mechraoui Ali 13 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

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.

 Un transcodeur est un Décodeur associé à un Codeur.

6.1. Les codes pondérés

6.1.1 Codes binaire, décimal et hexadécimal

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.

Mr. Mechraoui Ali 14 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

Le code binaire Naturel

C’est une représentation numérique des nombres dans la base 2

Décimal Code Binaire Naturel


a3 a2 a1 a0
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
10 1 0 1 0
11 1 0 1 1
12 1 1 0 0
13 1 1 0 1
14 1 1 1 0
15 1 1 1 1

6.1.2. Le code décimal codé binaire (code DCB)

Sa propriété est d’associer 4 bits représentent chaque chiffre en binaire naturel.


L’application la plus courante est celle de l’affichage numérique ou chaque chiffre est associé
à un groupe de 4 bits portant le code DCB.

Mr. Mechraoui Ali 15 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

Exemples :

 (9 4 2 7)10 = (1001 0100 0010 0111)DCB  (6 8 0 1)10 = (0110 1000 0000 0001)DCB

6.1.3. Le code binaire réfléchi (code GRAY)


Les codes réfléchis sont dits : à distance unitaire, parce qu'il n'y a toujours qu'un seul bit
qui change entre deux combinaisons successives : à chaque augmentation d'une unité du chiffre
décimal, un seul bit du nombre binaire équivalent change de valeur par rapport au nombre
binaire précédant.

Il existe plusieurs méthodes de construire un code Gray.

Méthode 1

Prenons par exemple la combinaison du code binaire à 4 bits, équivalente à (12)10.

(12)10 = (1100)BN avec 1 c’est le bit b3


1 c’est le bit b2
0 c’est le bit b1
0 c’est le bit b0
Principe :
• On conserve, systématiquement, le bit le plus à gauche (ici le bit b3)
• Le bit suivant b2 est :
*conservé si le précédent b3=0
* inversé si le précédent b3=1
• On poursuit le même raisonnement jusqu'au bit b0

Code binaire b3=1 b2=1 b1=0 b0=0


Code Gray Conserver b3 Inverser b2 Inverser b1 Conserver b0
b3=1 b2=1 b1=0
1 0 1 0

Mr. Mechraoui Ali 16 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

Méthode 2

Principe :

• On conserve, systématiquement, le bit le plus à gauche


• Puis on additionne le bit Bn+1 avec le bit suivant Bn
*Le bit BBR reçoit le B0 du résultat
• On poursuit le même raisonnement jusqu'au bit b0
Exemples

(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

Mr. Mechraoui Ali 17 A.U: 2022/2023


Cours de systèmes logiques ISET DU KEF

6.2. Les codes non pondérés


6.2.1. Les codes alphanumériques (code ASCII)
Le code ASCII (American Standard Code for information interchange) est un code
alphanumérique, devenu une norme internationale. Il est utilisé pour la transmission entre
ordinateurs ou entre un ordinateur et des périphériques. Sous sa forme standard, il utilise 7 bits.
Ce qui permet de générer 27=128 caractères. Ce code représente les lettres alphanumériques
majuscules et minuscules, les chiffres décimaux, des signes de ponctuation et des caractères de
commande.

Chaque code est défini par 3 bits d’ordre supérieur b6b5b4 et 4 bits d’ordre inferieur b3b2b1b0

Exemple :

Le message codé en ASCII = (1000001 1001001 1000100 1000101)2

En hexadécimal = (41 49 44 45)H Résultat = AIDE

Mr. Mechraoui Ali 18 A.U: 2022/2023

Vous aimerez peut-être aussi