Académique Documents
Professionnel Documents
Culture Documents
Module: Informatique 1
CHAPITRE 2
REPRÉSENTATION DES NOMBRES
1
REPRÉSENTATION DES NOMBRES
PLAN DU CHAPITRE
6. Codification des nombres entiers
1. Introduction 1. Entiers naturels
2. Changements de bases 2. Entiers relatifs
3. Représentation des nombres 7. Opération des nombres binaires
a) Représentation des nombres entiers
signés
b) Représentation des nombres
fractionnaires a) Addition et soustraction
4. Passage de base i. Complément à 1
a) Passage d’une base quelconque à la ii. Complément à 2
base 10 b) Multiplication
b) Passage de la base 10 vers une base
quelconque c) Division
c) Passage de la base entre les bases 2, 8. Codification des nombres réels en
8 et 16 virgule flottante
5. Opérations arithmétiques 2
1) INTRODUCTION SYSTÈME BINAIRE ?
Système binaire ?
▪ L’unité d’information est le chiffre binaire (0 ou 1), que l’on appelle bit (pour binary
digit ou chiffre binaire).
3
1) INTRODUCTION SYSTÈME BINAIRE ?
Codage de l’information ?
▪ On utilise la représentation binaire car elle est simple, facile à réaliser techniquement
à l’aide de bistables (système à deux états réalisés à l’aide de transistors).
▪ Notons ai la suite des chiffres utilisés pour écrire un nombre, a0 est le chiffre des
unités.
6
3) REPRÉSENTATION DES NOMBRES
3.1. REPRÉSENTATION DES NOMBRES ENTIERS
▪ Dans le cas général, en base b, le nombre représenté par une suite de chiffres
anan-1.....a1a0 est donné par:
7
3) REPRÉSENTATION DES NOMBRES
3.1. REPRÉSENTATION DES NOMBRES ENTIERS
Exemple en base 2 :
(101)2 = 1*22 + 0* 21 + 1* 20 = 4 + 0 + 1 = 5
8
3) REPRÉSENTATION DES NOMBRES
3.2. REPRÉSENTATION DES NOMBRES FRACTIONNAIRES
▪ Les nombres fractionnaires sont ceux qui comportent des chiffres après la virgule. Dans
le système décimal, on écrit par exemple :
9
4) PASSAGE DE BASE
4.1. PASSAGE D’UNE BASE QUELCONQUE À LA BASE 10
Exemple en hexadécimal :
10
4) PASSAGE DE BASE
4.2. PASSAGE DE LA BASE 10 VERS UNE BASE QUELCONQUE
➢ La suite des restes obtenus correspond aux chiffres dans la base visée, a0a1....an
Exemple en en binaire :
11
4) PASSAGE DE BASE
4.2. PASSAGE DE LA BASE 10 VERS UNE BASE QUELCONQUE
12
4) PASSAGE DE BASE
4.2. PASSAGE DE LA BASE 10 VERS UNE BASE QUELCONQUE
13
4) PASSAGE DE BASE
4.2. PASSAGE DE LA BASE 10 VERS UNE BASE QUELCONQUE
14
4) PASSAGE DE BASE
4.3. PASSAGE DE BASE ENTRE LES BASES 2, 8 ET 16
▪ Ces bases correspondent à des puissances de 2 (21, 23 et 24), d’où des passages de
l’une à l’autre très simples.
16
6) CODIFICATION DES NOMBRES ENTIERS
Pourquoi ?
17
6) CODIFICATION DES NOMBRES ENTIERS
▪ Les entiers naturels (positifs ou nuls) sont codés sur un nombre d’octets fixé (un octet
est un groupe de 8 bits). On rencontre habituellement des codages sur 1, 2 ou 4 octets,
plus rarement sur 64 bits (8 octets, par exemple sur les processeurs DEC Alpha).
▪ Un codage sur n bits permet de représenter tous les nombres naturels compris entre
0 et 2n - 1.
▪ On représente le nombre en base 2 et on range les bits dans les cellules binaires
correspondant à leur poids binaire, de la droite vers la gauche.
➢ Si nécessaire, on complète à gauche par des zéros (bits de poids faible).
18
6) CODIFICATION DES NOMBRES ENTIERS
▪ On représente le nombre en base 2 et on range les bits comme pour les entiers
naturels.
▪ On peut représenter sur n bits les entiers compris entre - (2n-1 - 1) et 2n-1 - 1
19
6) CODIFICATION DES NOMBRES ENTIERS
❖ Entiers négatif
• 2 façons de représenter:
20
6) CODIFICATION DES NOMBRES ENTIERS
6.1. Entiers relatifs
➢ Plus qu'une seule façon de coder le 0 : Représentation de 0 (sur 4 bits) : 0000 =>
complément à 1 : 1111 on ajoute 1 : 10000
22
7) OPÉRATION DES NOMBRES BINAIRES SIGNÉS
23
7) OPÉRATION DES NOMBRES BINAIRES SIGNÉS
• La somme de 2 nombres (de n bits) ne peut être codée sur n bits (la somme est parfois
trop grande ou trop petite)
7.2 Multiplication
✓ Les deux nombres doivent être représentés dans une forme sans complément
(i.e valeur absolue)
✓ On effectue la multiplication
✓ On décide du signe du résultat :
• Les opérandes sont de mêmes signes : le résultat est positif
• Les signes des opérandes sont différents : le résultat est négatif
25
7) OPÉRATION DES NOMBRES BINAIRES SIGNÉS
7.3 Division
26
8) CODIFICATION DES NOMBRES RÉELS EN VIRGULE FLOTTANTE
Principes ?
• Le nombre est présenté sous forme normalisée pour déterminer la mantisse et exp.
• Dans la convention la plus courante, un nombre binaire normalisé différent de zéro a la
forme: ±1.bbb...bx2±e
• Comme, sous cette forme, le bit le plus signifiant est toujours égal à 1, il n'est pas
nécessaire de le coder: il est implicite.
27
8) CODIFICATION DES NOMBRES RÉELS EN VIRGULE FLOTTANTE
Exemple:
Remarque : Par extension, tous les nombres avec exposant égal à 0 sont dits non
normalisés: le bit à gauche du point décimal est égal à 0 et non pas à 1,
comme c'est le cas pour les autres nombres, normalisés
28
8) CODIFICATION DES NOMBRES RÉELS EN VIRGULE FLOTTANTE
Exemple:
Solution: Comme un exposant est un nombre entier signé, une solution serait de le
représenter en complément à 2.
29
8) CODIFICATION DES NOMBRES RÉELS EN VIRGULE FLOTTANTE
En général, l'exposant est représenté de façon biaisée: une constante, le biais, doit
être soustraite de la valeur dans le champ pour obtenir la vraie valeur de l'exposant
▪ Toutefois, les deux valeurs extrêmes du champ exposant sont réservées pour des cas
particuliers:
➢ 00…00: pour les nombres non normalisés
➢ 11..11: pour infini (positif et négatif) et NaN (not a number)
30
8) CODIFICATION DES NOMBRES RÉELS EN VIRGULE FLOTTANTE
Exemple 1:
• Si k=4, la valeur du biais sera 7, l'exposant pourra avoir une des valeurs suivantes :
31
8) CODIFICATION DES NOMBRES RÉELS EN VIRGULE FLOTTANTE
Exemple 2:
32
8) CODIFICATION DES NOMBRES RÉELS EN VIRGULE FLOTTANTE
Exemple 2:
33
8) CODIFICATION DES NOMBRES RÉELS EN VIRGULE FLOTTANTE
34
8) CODIFICATION DES NOMBRES RÉELS EN VIRGULE FLOTTANTE
▪ Avant de faire l’addition, il faut que les deux exposants soient égaux. Puis renormaliser
si nécessaire.
▪ Pour Multiplier on additionne les exposants et on multiplie les mantisses (0,bbb...b), puis
le résultat est arrondi et normalisé.
35
8) CODIFICATION DES NOMBRES RÉELS EN VIRGULE FLOTTANTE
▪ Exemple:
36
8) CODIFICATION DES NOMBRES RÉELS EN VIRGULE FLOTTANTE
▪ Exemple:
37