2023-2024
Architecture des Ordinateurs
Cours destiné aux étudiants
en Licence 1 TWIN
M. KOUADJO ANO
Enseignant – Chercheur à l’ESATIC / Responsable UP physique
Email: [Link]@[Link] / Cel: +225 07 57 14 00 02
Direction de la pédagogie - Bureau n°8
11
Chapitre 2 : Systèmes de numération et
codage de l’information
Sommaire
➢ Introduction
➢ Système décimal
➢ Système binaire , octal et hexadécimal
➢ Conversion d’un système de numération vers un autre système
➢ Codage binaire
2
Objectifs
• Comprendre la notion de système de numération (binaire…);
• Appliquer les méthodes de conversion d’un système à un
autre ;
• Maitriser les opérations arithmétiques en binaire.
• Etudier les principaux codes utilisés dans les systèmes
numériques.
3
2.1. Introduction
• Nous avons pris l'habitude de représenter les nombres en utilisant dix
symboles différents: 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9
• Ce système est appelé le système décimal (déci signifie dix).
• Il existe cependant d'autres formes de numération qui fonctionnent en
utilisant un nombre de symboles distincts.
• Exemple :
• système binaire (bi: deux),
• le système octal (oct: huit),
• le système hexadécimal (hexa: seize).
• En fait, on peut utiliser n'importe quel nombre de symboles différents
(pas nécessairement des chiffres).
• Dans un système de numération : le nombre de symboles distincts est
appelé la base du système de numération.
4
2.2. Le système décimal
On utilise dix symboles (digits) différents: { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 }
N’importe quelle combinaison de ces symboles nous donne un nombre.
2334567
Poids fort Poids faible
345 , 567
Partie entière Partie fractionnelle
5
2.2.1 Développement en polynôme d’un
nombre dans le système décimal
• Soit le nombre 1978, ce nombre peut être écrit sous la forme
suivante :
1978 = 1000 + 900 + 70 + 8
1978 = 1*1000 + 9 *100 + 7 *10 + 8 *1
1978 = 1*103 + 9 *102 + 7 *101 + 8 *100
Cette forme s’appelle la forme polynomiale
Un nombre réel peut être écrit aussi sous la forme polynomiale
1978,265 = 1*103 + 9 *102 + 7 *101 + 8 *100 + 2 *10−1 + 6 *10−2 + 5 *10−3
6
2.2.2. Comptage en décimal
• Sur une seule position : 0 ,1,2,3,4,5,….9 = 101-1
• Sur deux positions : 00 , 01, 02, ….., 99 = 102-1
• Sur trois positions : 000, 001 ,……, 999 = 103-1
• Sur n positions : minimum 0
maximum 10n-1
nombre de combinaisons 10n
7
2 . 3. Système binaire, Hexadécimal
2 . 3. 1. Système binaire ( système à base 2 )
Les systèmes électriques et électroniques sont caractérisés par
deux états:
- interrupteur : ouvert ou fermé
- transistor : bloqué ou saturé
De cette constatation est née l'idée d'utiliser le système à base 2 ou
système binaire.
➢ Dans le système binaire, pour exprimer n’importe quelle
valeur on utilise uniquement 2 symboles : { 0 , 1}
La base
( 1101)2
Un bit
8
( 1 1 0 1)2
Le bits du poids forts Le bits du poids faible
LSB = bit de poids le plus faible (à droite)
MSB = bit de poids le plus fort (à gauche)
LSB = Least significant bit
MSB = Most significant bit
Le poids des bits dépend de leur rang dans l'écriture
Un nombre dans la base 2 peut être écrit aussi sous la forme polynomial
(1110)2 = 1* 23 + 1* 22 + 1* 21 + 0 * 20 = (14)10
(1110,101)2 = 1* 23 + 1* 2 2 + 1* 21 + 0 * 20 + 1* 2 −1 + 0 * 2 −2 + 1* 2 −3 = (14,625)10
9
1.3.2 Comptage en binaire
• Sur un seul bit : 0 , 1 • Sur 3 bits
Binaire Décimal
000 0
• Sur 2 bits 001 1
010 2
Binaire Décimal
011 3
00 0 100 4
01 1 101 5
10 2 110 6
11 3 111 7
4 combinaisons= 22 8 combinaisons= 23 10
2.3.3. Le système hexadécimal
Décimal Hexadéc
imal
• Il est très employé, surtout en 0 0
informatique. C'est un système 1 1
numérique ayant pour base 16. On 2 2
l'utilise pour l'écriture condensée de
nombres binaires. 3 3
4 4
• On utilise seize (16) symboles
différents: 5 5
6 6
7 7
8 8
(17)16 = 1*161 + 7 *160 9 9
10 A
(AB)16 = A *16 + B *16 = 10 *16 + 11*1
1 0 1
11 B
12 C
13 D
14 E
15 F11
Résumé
• Dans une base X , on utilise X symboles distincts pour
représenter les nombres.
• La valeur de chaque symbole doit être strictement inférieur à la
base X.
• Chaque nombre dans une base X peut être écrit sous sa forme
polynomiale .
12
2.2.4. Conversion d’un système de
numération vers un autre
2.4.1. Conversion d’une base X à la base 10
• Cette conversion est assez simple puisque il suffit de faire le
développement en polynôme de ce nombre dans la base X , et
de faire la somme par la suite.
Exemple :
(1101)2 = 1* 23 + 1* 2 2 + 0 * 21 + 1* 20 = (13)10
(1A7)16 = 1*162 + A *161 + 7 *160 = 1*162 + 10 *161 + 7 *160 = 256 + 160 + 7 = (423)10
(1101,101)2 = 1* 23 + 1* 2 2 + 0 * 21 + 1* 20 + 1* 2 −1 + 0 * 2 −2 + 1* 2 −3 = (13,625)10
(43,2)5 = 4 * 51 + 3 * 50 + 2 * 5−1 = 20 + 3 + 0,4 = (23,4)10
13
14
Exercice d’application
• Effectuer les transformations suivantes à la base 10 ?
• (123)6=(?)10
• (45,76)8 =(?)10
• (1100,11)2 =(?)10
• (1ABC)16 =(?)10
15
[Link] de la base 10 à la base 2
Le principe consiste à faire des divisions successives du nombre sur
2 , et prendre le reste des divisions dans l’ordre inverse.
35 2
Exemple 1 : (35)10=(?)2
1 17 2
1
8 2
Après division : 0 4 2
on obtient : (35)10=(100011)2
0 2 2
0 1 2
1 0
16
2.4.3. conversion de la base 10 à la base 2 : cas d’un nombre réel
• Un nombre réel est constitué de deux parties : la partie entière et la partie fractionnelle.
• La partie entière est transformée en effectuant des divisions successives par 2.
• La partie fractionnelle est transformée en effectuant des multiplications successives par
2.
Exemple : 35,625=(?)2 0,625 * 2 = 1 ,25
P.E= 35 = (100011)2 0,25 * 2 = 0 ,5
0,5 * 2 = 1 ,0
PF= 0,625 = (?)2
(0,625)=(0,101)2
Donc 35,625=(100011,101)2
17
• Exemple 2: (0,6)10=(?)2
0,6 * 2 = 1,2
0,2 * 2 = 0,4 (0,6)= (0,1001)2
0,4 * 2 = 0,8
0,8 * 2 = 1,6
Remarque :
Le nombre de bits après la virgule va déterminer la précision .
Exercice :
Effectuer les transformations suivantes :
(23,65)=(? )2
(18,190)=(?)2
18
1.4.4. Conversion du décimal à une base X
• La conversion se fait en prenant les restes des divisions
successives sur la base X dans le sens inverse.
Exemple : 35 3
35 = (?)3 2 11 3
2
3 3
35=(1022)3 0 1 3
1 0
• Question : Effectuer les transformations suivantes :
(43)10=(?)2=(?)5 =(?)8 =(?)16
19
43 2
43 5
1 21 2
1 10 3 8 5
2 3 1 5
0 5 2 1
1 2 2
0 (133)5
1 2
(101011)2 1 0
43 16
43 8
11 2 16
3 5 8
2 0
5 0
(2B)16
(53)8
20
1.4.5. Conversion d’une base b1 à une base b2
• Il n’existe pas de méthode pour passer d’une base b1 à une autre base b2
directement.
• L’idée est de convertir le nombre de la base b1 à la base 10 , en suit
convertir le résultat de la base 10 à la base b2 .
?
b1 b2
Développement
Divisions successives
en polynôme
10
21
Exemple : ( 34)5=(?)7
(34 ) 5 = 3 * 51 + 4 * 50 = 15 + 4 = (19 )10 = (?) 7
19 7
(19)10=(25)7
( 34)5=(25)7 5 2 7
2 0
Exercice : effectuer les transformations suivantes
(43)6=(?)5=(?)8
(2A)16=(?)9
22
1.4.8. Conversion : hexadécimal → binaire
Décimal Hexadécimal
0 0
En Hexa chaque symbole de la base s’écrit sur 4
1 1
bits.
2 2
L’idée de base est de replacer chaque symbole 3 3
par sa valeur en binaire sur 4 bits ( faire des 4 4
éclatement sur 4 bits ). 5 5
6 6
7 7
8 8
9 9
10 A
Exemple : 11 B
(345B)16=(0011 0100 0101 1011)2 12 C
13 D
(AB3,4F6)16 = ( 1010 1011 0011 , 0100 1111 0110 ) 2 14 E
15 F
23
[Link] : binaire →hexadécimal
L’idée de base est de faire des regroupements de 4 bits à partir du
poids faible.
Par la suite remplacer chaque regroupement par la valeur Héxa
correspondante .
Exemple :
(11001010100110)2=(0011 0010 1010 0110)2=(32A6)16
(110010100,10101)2= (0001 1001 0100,1010 1000)2=(194,A8)16
24
1.4.10. Opérations arithmétiques en binaire
0 0 1 1
+ + + +
0 1 0 1
0 1 1 1 0
1 1
1 1 0 0 0 1 1
+ 1 0 0 0 1 0 1 1
1 1 1 0 1 1 1 0
25
1.4.12. Opérations arithmétiques en hexadécimal
4 8 6 5
+
7 A 5 1
12 18 11 6
C En hexa 11 s’écrit B
En hexa 18 s’écrit 12
B
2
Le résultat final : (C2B6)16
26
Exercice
• Effectuer les opérations suivantes et transformer le résultat au
décimal à chaque fois:
• (1101,111)2+(11,1)2=(?)2
• (AB1)16+(237)8=(?)16
27
27
1.5. Codage binaire
Quel est le système utilisé dans les dispositifs numériques ?
. Les machines numériques utilisent le système binaire.
. Dans le système binaire : uniquement 2 symboles sont utilisés : 0 et 1.
. C’est facile de représenter ces deux symboles dans les machines numériques.
. Le 0 et le 1 sont représentés par deux tensions .
5v
Binaire Tension Binaire : 1
(logique ) 2,8 v
0 0V Inutilisée
1 5V 0,8 v
Binaire : 0
0v
28
Définitions
Codage : opération qui établit une
correspondance entre un ensemble source
(nombre, caractère, symbole) vers un ensemble
destination contenant des combinaisons de 0 et
de 1.
Un code est une écriture symbolique arbitrairement défini destiné à représenter une
information plus ou moins complexe. Une information peut se coder de plusieurs
façons en fonction de son utilisation.
29
29
Qualités d’un code
- Simplicité
Pour être utile, un code doit symboliser simplement une situation à priori
complexe.
- Caractère biunivoque
Pour éviter toute indétermination, chaque information doit être codée d’une
manière unique.
30
[Link] numériques pondérés
[Link]. Code binaire pur (code 1248)
La façon la plus simple de représenter les 10 premiers chiffres décimaux par 4
variables binaires est de prendre les 10 premières combinaisons des 4 variables du
système binaire naturel,
Le code binaire pur est un code pondéré par des puissances de 2, utilisé en
arithmétique binaire. Ses dérivées sont le code octal et le code hexadécimal.
Exemple
[Link]. Code binaire en complément vrai
(complément à 2)
Tout comme le code binaire pur, c’est un code pondéré par des puissances de 2
dont le bit de poids fort a un poids négatif. C’est le code le plus utilisé
en arithmétique binaire.
Exemple:
31
[Link]. Code BCD ( Binary Coded Decimal )
• Pour passer du décimal au binaire , il faut Décimal BCD
effectuer des divisions successives. Il existe N 8 4 2 1
une autre méthode simplifiée pour le
0 0 0 0 0
passage du décimal au binaire.
1 0 0 0 1
2 0 0 1 0
• Le principe consiste à faire des éclatement
sur 4 bits et de remplacer chaque chiffre 3 0 0 1 1
décimal par sa valeur binaire correspondante 4 0 1 0 0
. 5 0 1 0 1
6 0 1 1 0
• Les combinaisons supérieures à 9 sont 7 0 1 1 1
interdites 8 1 0 0 0
9 1 0 0 1
32
Exemple
5 6 2
1 2 9
0101 0110 0010
0001 0010 1001
129 = ( 0001 0010 1001)BCD 562 = (0101 0110 0010)BCD
Remarque: Il ne faut pas confondre le code DCB et le code binaire pur : quand on
code selon le code binaire pur on prend le nombre dans son intégralité et on le
convertit; par contre, quand on code en DCB on code chaque chiffre
indépendamment les uns des autres.
Exemple: (137)10 = (010001001)2 = (000100110111)DCB
33
[Link]. Code Gray ( Binaire réfléchi )
Définition
- Propriété d’adjacence
Deux mots binaires sont adjacents si et seulement s’ils ne diffèrent
que d’un seul bit.
sont adjacents Exemple : 1010 et 1011
ne sont pas adjacents 1010
et- 1111Code continu
Un code est continu si et seulement si deux combinaisons successives sont
adjacentes
00
Exemple : 01
11
10
34
- Code cyclique
Un code est cyclique si la dernière combinaison est adjacente à la
première.
Remarque: un code peut être cyclique sans être continu et vis-versa.
- Code Gray
C’est un code à distance minimal (adjacent), continu et
cyclique.
35
- Conversion binaire naturel - binaire réfléchi.
Il faut faire la somme modulo 2 comme suit:
Soit le nombre binaire:
+
N3 N2 N1 N0
N3 N2 N1 N0 Décalage
R3 R2 R1 R0 N0
Le bit le plus à droite est abandonné
Exemple:
36
- Conversion binaire réfléchi - binaire naturel.
Il faut faire la somme modulo 2 comme suit:
Soit le nombre binaire:
R3 R2 R1 R0
+
N3 N2 N1
N3 N2 N1 N0
Exercice
1 Convertir les codes binaires suivants en codes Gray
a) 1010 b) 10000 c) 10001 d) 10010 e) 10011 f) 11100
2 Convertir les codes Gray suivants en binaire
a) 0100 b) 11111 c) 10101 d) 110011
37
37
[Link]. Codage des caractères
• Les caractères englobent : les lettres alphabétiques ( A-Z a-z ) , les chiffres
(0,…9) , et les autres symboles : ponctuations, caractères spéciaux ( > , ; / :
…. ) .
• Le codage revient à créer une table de correspondance entre les caractères
et les nombres.
• Le codage le plus utilisé est le ASCII (American Standard Code for
Information Interchange)
• Dans ce codage chaque caractère est représenté sur 7 bits .
• Avec 7 bits on peut avoir 27 = 128 combinaisons
• Chaque combinaison représente un caractère
– Exemple :
• Le code 65 (1000001)2correspond au caractère A
• Le code 97 (1100001) correspond au caractère a
• Le code 58 (0111010 )correspond au caractère : 38
Le tableau ci-contre nous
donne une partie du code ASCII
où les 7 bits sont désignés par
b6, b5, b4, b3, b2, b1, b0 : 1
SP : Espace
Exemple :
le code ASCII de ‘ A’ est :
1000001 = (41)H
39
40
41
Architecture des ordinateurs
Systèmes de numération et codage
FIN
42