30/09/2018
Objectifs
Architecture des ordinateurs & Algorithmique
Partie I : Architecture des ordinateurs
Comprendre les techniques de représentation
internes des informations
Chapitre 2 : Codage des informations
1ère Année Cycle Préparatoire Intégré / Semestre 1
ENSA Khouribga
Pr. DARGHAM Abdelmajid
Année universitaire : 2018/2019
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
ENSAK
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
Sommaire
Besoin du codage d’information
Les systèmes de numération
L’organisation des informations en mémoire
L’arithmétique en binaire pure
Représentation des nombres négatifs
Codage BCD
Représentation des nombres réels
Représentation des caractères
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
Besoin du codage d’information
Besoin du codage d’information
Un ordinateur manipule toute sorte
d’information :
Dans son niveau le plus bas, l’ordinateur
reste une machine électronique : il ne traite
que des signaux électriques.
Fondamentalement, il y a deux signaux
électriques élémentaires différents :
Le signal de faible voltage (ou état « 0 »).
Le signal de haut voltage (ou état « 1 »).
Chaque signal élémentaire peut alors se
trouver dans l’un de ces deux états : « 0/1 ».
Numérique.
Alphabétique.
Graphique.
Audio.
Vidéo.
Cliques souris.
Programmes.
...
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
1
30/09/2018
Besoin du codage d’information
Besoin du codage d’information
Par conséquence, toute information, quelque
soit sa nature, doit être présentée à
l’ordinateur sous forme d’une collection de
ces signaux électriques.
L’information doit alors être codée !
La méthode de codage d’une information
dépend de la nature de celle=ci.
En informatique, le système binaire est à la
base de toute méthode de codage.
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
Définition :
Coder une information c’est réaliser une
correspondance biunivoque qui permet
sans
ambiguïté
de
passer
d’une
représentation (dite externe) de cette
information à une autre représentation (dite
interne sous forme binaire) de la même
information, suivant un ensemble de règles
précises.
ENSAK
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
ENSAK
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
Besoin du codage d’information
Exemple :
Considérons le nombre 29
29 est la représentation externe du nombre
La représentation interne de 29 sera une
suite de 0 et de 1 : (11101)
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
Les systèmes de numération
Les systèmes de numération
Un système de numération se défini par :
Un alphabet de base A : ensemble des
symboles (ou chiffres) à utiliser.
Un ensemble de règles d’écriture des
nombres.
Dans les systèmes de numération modernes, les
nombres sont écrits par simple juxtaposition de
symboles de l’alphabet de base A.
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
Les systèmes de numération les plus courants :
Le système décimal (
) : utilise les 10
chiffres : 0, 1, 2, 3, 4, 5, 6, 7, 8 et 9.
) : utilise les 2
Le système binaire (
chiffres : 0 et 1.
Le système octal (
) : utilise les 8
chiffres : 0, 1, 2, 3, 4, 5, 6 et 7.
Le système hexadécimal (
) : utilise
les 16 chiffres : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B,
C, D, E et F.
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
2
30/09/2018
Les systèmes de numération
Les systèmes de numération
Le système binaire comprend deux valeurs
basiques discrètes : 1 et 0.
Un chiffre binaire est appelé bit (
représente l’une de ces deux valeurs.
Architecture des ordinateurs & Algorithmique
En général, le système de numération à base B
(B est un nombre entier ≥ 2) utilise les B
premiers entiers de 0 à B01.
Un nombre entier X (base 10) se décompose
d’une manière unique en :
X = αNBN + αN=1BN=1 + … + α1B1 + α0B0
Les coefficients αi vérifient : 0 ≤ α < B, quelque
soit l’indice i (de 0 à N).
On écrit X, en ignorant les puissances de B :
X = (αNαN=1…α1α0)B
) et
Pr. DARGHAM Abdelmajid
ENSAK
Les systèmes de numération
ENSAK
Pr. DARGHAM Abdelmajid
Comment déterminer ces coefficients ?
De même, α1 est le reste de la division de (X
÷ B) par B, car :
(X÷B) = (αNBN=2 + … + α2)B + α1 et 0 ≤ α < B
Le quotient de (X ÷ B) par B est égal à :
(X ÷ B) ÷ B = (αNBN=2 + αN=1BN=3 + … + α2)
Et ainsi de suite, le processus est récursif !
On répète le même processus jusqu’à trouver
le premier quotient nul.
ENSAK
Les systèmes de numération
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
Les systèmes de numération
Comment déterminer ces coefficients ?
La séquence des restes obtenues correspond
aux symboles de la base considérée.
On obtient en premier le chiffre de poids
faible (B0) et en dernier le chiffre de poids fort
(BN).
Pour obtenir la représentation de X en base B,
il suffit alors d’écrire les restes dans l’ordre
inverse.
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
Les systèmes de numération
Comment déterminer ces coefficients ?
X = αNBN + αN=1BN=1 + … + α1B1 + α0B0
Tout d’abord, α0 est le reste de la division de
X par B, car :
X = (αNBN=1 + … + α1)B + α0 et 0 ≤ α < B
Remarquons tout de suite que le quotient de
X par B est égal à :
(X ÷ B) = (αNBN=1 + αN=1BN=2 + … + α1)
Architecture des ordinateurs & Algorithmique
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
Exemple :
Écrivons 46 dans la base 3 :
46
15
5
1
0
46 = (1201)3
1
0
2
1
Architecture des ordinateurs & Algorithmique
α0
α1
α2
α3
Pr. DARGHAM Abdelmajid
ENSAK
3
30/09/2018
Les systèmes de numération
Les systèmes de numération
Exercice :
Convertir le nombre (2018)10 en :
Base 16
Base 8
Base 2
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
Conversion octal binaire :
Remplacer chaque chiffre octal en son
équivalent binaire sur trois bits, puis effacer
les 0 à gauche si nécessaire :
0
1
2
3
4
5
6
7
ENSAK
Les systèmes de numération
Pr. DARGHAM Abdelmajid
ENSAK
Les systèmes de numération
ENSAK
Conversion hexadécimal
binaire :
Remplacer chaque chiffre hexadécimal en
son équivalent binaire sur quatre bits, puis
effacer les 0 à gauche si nécessaire :
0
1
2
3
0000
0001
0010
0011
4
5
6
7
0100
0101
0110
0111
8
9
A
B
1000
1001
1010
1011
C
D
E
F
1100
1101
1110
1111
(1A7E)16 = (0001101001111111)2 =
(1101001111111)2
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
Les systèmes de numération
Conversion binaire hexadécimal :
Regrouper, à partir de la droite, chaque
groupe de quatre bits par son équivalent en
hexadécimal (ajouter des 0 à gauche si
nécessaire).
Exemple :
(10101111011)2 = (0101 0111 1011)2 = (57B)16
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
Les systèmes de numération
Conversion octal binaire (exemple) :
(1472)8 = (001100111010)2 = (1100111010)2
Conversion binaire octal :
Regrouper, à partir de la droite, chaque
groupe de trois bits par son équivalent en
octal (ajouter des 0 à gauche si nécessaire).
Exemple :
(10101111011)2 = (010 101 111 011)2 = (2573)8
Architecture des ordinateurs & Algorithmique
Architecture des ordinateurs & Algorithmique
000
001
010
011
100
101
110
111
Pr. DARGHAM Abdelmajid
ENSAK
Conversion hexadécimal
octal :
Convertir le nombre hexadécimal en binaire.
Convertir le nombre binaire obtenu en octal.
Exemple :
(1A7E)16 = (0001101001111111)2 = (000 001
101 001 111 111)2 = (15177)8
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
4
30/09/2018
Les systèmes de numération
Les systèmes de numération
Conversion octal hexadécimal :
Convertir le nombre octal en binaire.
Convertir le nombre binaire obtenu en
hexadécimal.
Exemple :
(1037)8 = (001000011111)2 = (0010 0001 1111)2
= (21F)16
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
Les systèmes de numération
Pr. DARGHAM Abdelmajid
ENSAK
Les systèmes de numération
Pr. DARGHAM Abdelmajid
ENSAK
Condition pour qu’un entier M
représentable en binaire sur N bits :
Il faut que : M ≤ 2N – 1
C’est=à=dire que M + 1 ≤ 2N
log2(M + 1) ≤ N
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
soit
ENSAK
Les systèmes de numération
Nombre de bits nécessaires pour représenter
un ensemble de M valeurs distinctes en
binaire :
Soit N le nombre de bits nécessaires
Il faut que : 2N=1 – 1 < M ≤ 2N – 1
N=1 < log2(M + 1) ≤ N
N = log
2(M + 1)
Architecture des ordinateurs & Algorithmique
Architecture des ordinateurs & Algorithmique
Les systèmes de numération
Intervalle des entiers en binaire représentés
sur N bits :
Le total des nombres entiers distincts
représentables sur N bits en base 2 : 2N
Le plus grand entier est 2N – 1 : il est
représenté par une séquence de N bits 1
Le plus petit entier est 0 : il est représenté par
une séquence de N bits 0
L’intervalle des nombres entiers est [0, 2N 0 1]
Architecture des ordinateurs & Algorithmique
Intervalle des entiers en base B représentés
sur N chiffres de la base :
Soit B ≥ la base et N le nombre de chiffres
utilisés dans le codage.
Le total des nombres entiers distincts
représentables sur N chiffres en base B : BN
Le plus grand entier est BN – 1
L’intervalle des entiers est [0, BN 0 1]
Pr. DARGHAM Abdelmajid
ENSAK
Exemple :
Pour représenter un domaine formé de M = 10
valeurs distinctes, il faut au moins :
N = log
2(M + 1)
N = log
2(10 + 1)
= log2(11)
= 3.4594316186
= 4 bits
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
5
30/09/2018
L’organisation des informations en mémoire
En arithmétique binaire pure, une valeur peut
prendre un nombre arbitraire de bits.
Ceci est impossible des les systèmes électroniques
: le nombre de bits est limité.
Les collections de bits les plus utilisés en
informatique sont des puissances de 2 :
Les bits singuliers
Les quartets
Les octets
Les mots
Les mots doubles
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
L’organisation des informations en mémoire
Pr. DARGHAM Abdelmajid
ENSAK
Les quartets (
):
Un quartet est une collection de 4 bits.
Le quartet n’est pas intéréssant, sauf s’il l’on
veut représenter les nombres en codage
"
) ou BCD (
(!
"
!
) ou en hexadécimal.
Avec un quartet, il est possible de représenter
jusqu’à 24 = 16 values distinctes.
ENSAK
L’organisation des informations en mémoire
Les octets (
Pr. DARGHAM Abdelmajid
L’organisation des informations en mémoire
Les multiples du bit sont :
L’octet = 8 bits
Le Kilo octet = 210 octets = 1024 octets
Le Méga octet = 210 Ko = 220 octets
Le Giga octet = 210 Mo = 230 octets
Le Téra octet = 210 Go = 240 octets
Le Péta octet = 210 To = 250 octets
Architecture des ordinateurs & Algorithmique
Architecture des ordinateurs & Algorithmique
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
L’organisation des informations en mémoire
):
Un octet est une collection de 8 bits.
Il peut représenter un caractère (lettre, chiffre, etc.)
Il représente la plus petite information qui soit
adressable en mémoire de l’ordinateur.
Dans un octet :
Le bit de poids faible représente le coefficient de
poids 20 = 1 (c’est le bit le plus à droite)
Le bit de poids fort représente le coefficient de
poids 27 = 128 (c’est le bit le plus à gauche)
7
6
5
4
3
2
1
0
Le bit de poids faible
Le bit de poids fort
Schéma d’un octet
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
6
30/09/2018
L’organisation des informations en mémoire
L’organisation des informations en mémoire
Les mots (#
):
Un mot est une collection de 16 bits.
Les mots peuvent représenter des collections
de données dont l’ensemble ne dépasse pas 216
= 65 536 valeurs distinctes.
Ils sont utilisés pour représenter des nombres
entiers (signés ou non).
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
Les mots doubles (!
$
):
Un mot double est une collection de 32 bits.
Les mots doubles peuvent représenter des
collections de données dont l’ensemble ne
dépasse pas 232 valeurs distinctes.
Ils sont utilisés pour représenter des nombres
entiers et réels (signés ou non).
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
L’arithmétique en binaire pure
%
Les règles de l’addition binaire :
0+0=0
1+0=0+1=1
1 + 1 = 10
Résultat = 0, avec Retenu = 1
&
111 1
100111
+
111010
Retenu
1100001
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
L’arithmétique en binaire pure
ENSAK
Les règles de la multiplication binaire :
0×0=1×0=0×1=0
1×1=1
×
Emprunt
+
+
000101
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
L’arithmétique en binaire pure
Les règles de la soustraction binaire :
0=0=1=1=0
1=0=1
0=1=1
Résultat = 1, avec Emprunt = 1
1
111011
110110
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
1101
101
1101
0000
1101
1000001
Architecture des ordinateurs & Algorithmique
Pr. DARGHAM Abdelmajid
ENSAK
7