Cours Systèmes logiques & Architecture des ordinateurs LSI 1ere année
Enseignante : Hemdani Asma 2021-2022
Chapitre 1 : Systèmes de numération et codes
I- Introduction
Un système de numération permet de coder une information (texte, image, nombre, parole …) en lui
attribuant un symbole ou combinaison de symboles compréhensible par le processeur. Le système
conventionnel de comptage en base 10 est incompatible avec la machine, d'où la nécessité d'introduire
d'autres systèmes de numération. Les systèmes de numération binaire et Hexadécimal sont les plus
utilisés dans le domaine de l'électronique et de l'informatique.
II- Base des systèmes de numération
La base est le nombre qui sert à définir le système de numération. On définit :
La base de système décimal est 10, si on utilise les dix chiffres du système décimal (0,1,2,3…ect)
La base de système binaire est 2, si on utilise une variable binaire, on ne dispose que deux chiffres ou
bits qui sont 0 et 1.
La base de système octal est 8, si on utilise huit chiffres de (0,1,2…7)
La base de système hexadécimal est 16, si on utilise les dix chiffres plus des lettres (0,1,2,ect…et
A,B,C,D,E,F)
Quelque soit la base employée, 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 peut être donnée par la relation suivante :
Avec : bi chiffre de la base de rang i
ai puissance de la base a d'exposant de rang i
Exemples :
Base 10 (1986)10 =1*103+9*102+8*101+6*100
Base 2 (10010)2 =1*24 +0*23+0*22+1*21+0*20= 16+2=(18)10
1- Le système décimal
Chaque chiffre peut avoir dix valeurs différentes, 0, 1, 2, 3, 4, 5, 6, 7, 8 et 9. Tout nombre écrit dans le
système décimal vérifie la relation polynomiale.
Exemples :
(732)10 = 7*102+3*101+2*100
7 représente le poids fort du nombre et 2 représente le poids faible
2
(345,567)10 = 3*102+4*101+5*100+5*10-1+6*10-2+7*10-3
2- Le système binaire
Chaque chiffre peut avoir deux valeurs différentes 0 et 1. Chacun d'eux est appelé bit.
(10110)2=1*24 +0*23+1*22+1*21+0*20= 16+4+2=(22)10
(10110,1011)2= 1*24 +0*23+1*22+1*21+0*20+1*2-1+0*2-2+1*2-3+1*2-4=(22,6875)10
3- Le système octal
Ce système a comme base huit valeurs différentes 0, 1, 2, 3, 4, 5, 6 et 7. Cette base obéira à la même
forme polynomiale.
(6057)8= 6*83+0*82+5*81+7*80= (3119)10
.
(6057,14)8= 6*83+0*82+5*81+7*80+1*8-1+4*8-2= (3119)10
4- Le système hexadécimal
Ce système a comme base 16 chiffres dont les valeurs différentes 0, 1, 2, 3, 4, 5, 6, 7, 8 , 9, A, B, C,
D, E et F. Cette base obéira à la même forme polynomiale, comme suit :
N1=(356)16=3*162+5*161+6*160=(854)10
N2=(2AF)16=2*162+10*161+15*160=(687)10
N3=(81,B)16=8*161+1*160+11*16-1=(129.6875)10
5- Tableau récapitulatif de correspondance entre les bases
Base 10
Base 2
Base 8
Base 16
0
0
0
0
1
1
1
1
2
10
2
2
3
11
3
3
4
100
4
4
5
101
5
5
Bit du poids faible noté LSB
Bit du poids fort noté MSB
3
6
110
6
6
7
111
7
7
8
1000
10
8
9
1001
11
9
10
1010
12
A
11
1011
13
B
12
1100
14
C
13
1101
15
D
14
1110
16
E
15
1111
17
F
III- Conversion d'un nombre d'une base à une autre
Il s'agit du processus de conversion d'un nombre écrit dans une base b1 à une autre base b2.
1- Le codage
La conversion d'un nombre décimal en une autre base non décimale est appelée codage
1.1 Codage en un nombre binaire
Le principe consiste à faire des divisions successives du nombre sur 2 et prendre le reste de la division
dans l'ordre inverse.
Exemple 1: (39)10 = (?)2
Après la division, le nombre recherché est : 100111
1.2 Codage en un nombre octal
On utilise la méthode de divisions successives par 8 jusqu'à un quotient égale à 0. Les restes
successifs pris de bas en haut forment le nombre codé en octal.
Exemple 1: (423)10 = (?)8
39
2
19
1
2
9
1
2
4
1
2
2
0
2
0
2
0
1
8
8
6
4
8
0
6
423
7
4
D'où (423)10 = (647)8
1.3 Codage en un nombre hexadécimal
On utilise la méthode de divisions successives par 16 jusqu'à un quotient égale à 0. Les restes
successifs pris de bas en haut forment le nombre code en hexadécimal.
Exemple 1: (423)10 = (?)16
D'où (423)10 = (1A7)16
2- Le décodage
Le décodage est la conversion d'un nombre quelconque écrit en base m (octal, binaire ou
hexadécimal) en base décimal. La forme générale est :
1
10 0
:
( ) . :
:
in
n
n
m la base
y X m avec i nombre de symbole
n lerang
=
=
Exemples
(100111)2 =1*25+0*24+0*23+1*22+1*21+1*20=(39)10
(647)8 =6*82+4*81+7*80=384+32+7=(423)10
(1A7)16 =1*162+10*161+7*160=256+160+7=(423)10
3- Le transcodage
C’est la conversion d'une base A à une base B (A et B ne sont pas des bases décimales). L’idée est de
convertir le nombre de base A à la base 10 puis coder le résultat à la base B.
Exemple : (34)8 (?)2
(34)8=3*81+4*80=(28)10=(11100)2
Une autre méthode plus pratique :
423
16
26
7
16
10
0
1
16
1
5
Conversion Octal Binaire
En octal, chaque symbole de la base s'écrit sur 3 bits en binaire. L’idée est de remplacer chaque
symbole dans la base octale par sa valeur en binaire.
Exemples :
(34)8 =(011100)2
Conversion Binaire Octal
L’idée est de faire des regroupements de 3 bits puis remplacer chaque regroupement par la valeur
octale correspondante. Le regroupement se fait de droite à gauche.
Exemples :
(11001010010110)2 =(31226)8
Conversion Hexadécimal Binaire
Chaque symbole de base hexadécimal s'écrit sur 4 bits.
Hexadécimal (1 A F 3 )16
Binaire (0001 1010 1111 0011)2
Conversion Binaire Hexadécimal
Binaire (1101 0000 1100)2
Hexadécimal (D0C)16
Conversion Octal Hexadécimal
Cette conversion se fait en passant par le système binaire
Exemple : (C3,47)16 (?)8
HexadécimalBinaireoctal
Hexadécimal ( C 3, 4 7 )16
Binaire (1100 0011,0100 0111)2
Octal (303,213)8
Pour convertir un nombre binaire en un nombre octal, il faut regrouper les bits du nombre
binaire par trois en allant vers la gauche à partir de la virgule pour la partie entière, et vers la
droite pour la partie fractionnaire, puis chaque groupe est remplacé par le chiffre octal
correspondant.
IV- Calcul arithmétique
Dans cette partie, on définit :
Les nombres binaires non signés (pas de bit de signe) et le calcul arithmétique se fait comme dans
le système décimal (base 10).
1 / 16 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !