Vous êtes sur la page 1sur 55

Introduction à l’informatique

Stockage et codage binaire

Leçon basée sur celle du Prof. NICOLAS VAN ZEEBROECK


Contenu
● Introduction
● Informations de base
● Informations multimédias
● Cryptage
● Stockage
● Conclusions

2
Contenu
● Introduction
● Informations de base
● Informations multimédias
● Cryptage
● Stockage
● Conclusions

3
Introduction (1/4) – Principe
● À l’ère digitale, on code tout en binaire :
– L’unité d’information est le bit (Binary-digIT) qui peut
prendre deux valeurs : 0 ou 1.
– Un bit de donnée encode une information vrai (true) ou
faux (false).
● Les bits sont regroupés pour encoder des informations
plus complètes :
– Ex: 8 bits = 1 octet (ou 1 byte) et peut représenter un
nombre entier compris entre 0 et 255.
Unité Puissance 10 Valeur Puissance 2 Valeur
Kilo 103 1.000 210 1024
Méga 106 1.000.000 220 1.048.576
Giga 109 1.000.000.000 230 1.073.741.824
Téra 1012 1.000.000.000.000 240 1.099.511.627.776

● Les bits encodent les informations en base 2 (versus le


système décimal “classique” qui utilise la base 10).

4
Introduction (2/4) – Représentation
● Les informations sont donc représentées par des séries de
bits (ex: 01000001).
● Les bits peuvent représenter n’importe quel type
d’information :
– Chiffres (entiers, décimaux, etc.).
– Caractères et chaînes de caractères pour encoder des
informations textuelles.
– Images.
– Sons.
● Pas de lien fixe entre série de bits et information :
– Une même série de bits peut encoder une multitude
d’informations.
– C’est l’interprétation d’une série de bits qui permet de
décoder l’information.

5
Introduction (3/4) – Interprétation (1/2)
● Logiciels décodent une série de bits pour présenter
l’information correspondante à l’utilisateur.
● Deux logiciels peuvent donc présenter la même série de
bits différemment.

6
Introduction (4/4) – Interprétation (2/2)
● La valeur d’une série de bits dépend donc du contexte.
● Des standards de codage existent pour assurer qu’une
série de bits donnée soit correctement interprétée par les
machines et les logiciels.
● Exemple des caractères :
– ASCII : Caractères codés sur une série de 7 ou 8 bits.
‘a’ = 01100001, ‘A’ = 01000001
– UNICODE : Caractères internationaux codés sur plusieurs
séries de 8 bits (UTF-8, UTF-16 et UTF-32).

7
Contenu
● Introduction
● Informations de base
● Informations multimédias
● Cryptage
● Stockage
● Conclusions

8
Informations de base (1/16) – Contenu
● Caractères
● Nombres entiers
● Nombre décimaux

9
Informations de base (2/16) – Caractères
● Encoder des caractères alphanumériques :
– ASCII est le standard le plus connu (tableau ci-dessous).
– Unicode s’impose à cause des caractères non latins.
Caractère Code binaire Caractère Code binaire Caractère Code binaire
0 00110000
1 00110001 A 01000001 a 01100001
2 00110010 B 01000010 b 01100010
3 00110011 C 01000011 c 01100011
4 00110100 D 01000100 d 01100100
5 00110101 E 01000101 e 01100101
6 00110110 F 01000110 f 01100110
7 00110111 G 01000111 g 01100111
8 00111000 H 01001000 h 01101000
9 00111001 I 01001001 i 01101001
J 01001010 j 01101010
K 01001011 k 01101011
L 01001100 l 01101100
M 01001101 m 01101101
N 01001110 n 01101110
O 01001111 o 01101111
P 01010000 p 01110000
Q 01010001 q 01110001
R 01010010 r 01110010
S 01010011 s 01110011
T 01010100 t 01110100
U 01010101 u 01110101
V 01010110 v 01110110
W 01010111 w 01110111
X 01011000 x 01111000
Y 01011001 y 01111001
Z 01011010 z 01111010

10
Informations de base (3/16) – Nombres entiers (1/12)
Entiers non signés (1/3) – Principe
● Encodage d’entiers non signés codés sur 8 bits :

Position 8 7 6 5 4 3 2 1
Signific. 27 26 25 24 23 22 21 20
Valeur 128 64 32 16 8 4 2 1

● Chaque chiffre représente une puissance de la base.


● Exemples :
– 00000000 = 0
– 00000001 = 1
– 10000000 = 128
– 01010101 = 85 =
0x128+1x64+0x32+1x16+0x8+1x4+0x2+1x1
– 11111111 = 255 =
1x128+1x64+1x32+1x16+1x8+1x4+1x2+1x1
11
Informations de base (4/16) – Nombres entiers (2/12)
Entiers non signés (2/3) – Longueur de codage
● Encodage d’entiers peut se faire sur des séries de bits de

longueur différente.
● Codage d’entiers non-signés sur 8 bits :

De 0 à 255 = 28-1 (28 codent 256 valeurs différentes)


● Codage d’entiers non-signés sur 16 bits :
De 0 à 65535 = de 0 à 216-1
● Codage d’entiers non-signés sur 32 bits :
De 0 à 232-1 = de 0 à 4.294.967.295
● Codage d’entiers non-signés sur 64 bits :
De 0 à 264-1

12
Informations de base (5/16) – Nombres entiers (3/12)
Entiers non signés (3/3) – Opérations arithmétiques
● Comme tous les nombres, les opérateurs arithmétiques

s’appliquent aux entiers non signés.


● Exemple d’une addition d’entiers non signés codés sur 8

bits :
8 = 00001000
+ 9 = 00001001
= 17 = 00010001

13
Informations de base (6/16) – Nombres entiers (4/12)
Entiers signés (1/9) – Principe
● Codage en complément à deux.

● Le premier bit code le signe et est appelé “le bit le plus

significatif”.
● L’addition de entiers négatifs et positifs est identique.

● Entiers positifs : Premier bit à 0, puis codage comme

pour les entiers non signés.


● Entiers négatifs :

– Inverser chaque bit par rapport au nombre positif (faire le


“complément à un”).
– Ajouter la valeur 1 au résultat.
● L’intervalle de codage est [-2n-1,2n-1–1] où n représente le
nombre de bits utilisés pour le codage.

14
Informations de base (7/16) – Nombres entiers (5/12)
Entiers signés (2/9) – Exemples sur 4 bits
● 1 = 0001 ; -1 = 1110 + 0001 = 1111

● 3 = 0011 ; -3 = 1100 + 0001 = 1101

Nombre Binaire
-8 1000
-7 1001
-6 1010
-5 1011
-4 1100
-3 1101
-2 1110
-1 1111
0 0000
+1 0001
+2 0010
+3 0011
+4 0100
+5 0101
+6 0110
+7 0111

15
Informations de base (8/16) – Nombres entiers (6/12)
Entiers signés (3/9) – Addition (1/3)
● Premiers exemples avec des entiers codés sur 4 bits :

0011 (3)
+ 0010 (2)
0101

0011 (3)
+ 0011 (3)

0011 (3)
+ 1110 (-2)

16
Informations de base (9/16) – Nombres entiers (7/12)
Entiers signés (4/9) – Addition (2/3)
● Premiers exemples avec des entiers codés sur 4 bits :

0011 (3)
+ 0010 (2)
0101

0011 (3)
+ 0011 (3)
0110 (6)

0011 (3)
+ 1110 (-2)
10001 = 001

17
Informations de base (10/16) – Nombres entiers (8/12)
Entiers signés (5/9) – Addition (3/3) – Troncage
● Codage ne peut pas dépasser la longueur (ici 4 bits).

– Solution : Tronquer les bits plus significatifs pour que la


longueur finale reste de 4.
● Second exemple avec des entiers codés sur 4 bits :
1010 (-6)
+ 1100 (-4)
= 10110
– Débordement : Si bit significatif est différent des deux
nombres (mais détectable).

18
Informations de base (11/16) – Nombres entiers (9/12)
Entiers signés (6/9) – Multiplication (1/4)
● Une multiplication de deux entiers encodés sur n bits

demande un encodage de 2×n bits.


● On procède comme en base 10 :

1. Multiplier le second multiplicateur par les “unités” du


premier, puis par les “dizaines”, puis par les “centaines”,
etc.
2. Additionner ensuite les différents résultats.
● Les “unités”, “dizaines”, “centaines”, etc., d’un entier
sont ses bits qui vont du dernier bit au plus significatif.

19
Informations de base (12/16) – Nombres entiers (10/12)
Entiers signés (7/9) – Multiplication (2/4)
● À chaque multiplication, il n’y a que deux cas de figure :

1) Soit le bit par lequel on multiplie vaut 1 : Garder le


multiplicateur tel quel (ex: 00011).
2) Soit le bit par lequel on multiplie vaut 0 : Prendre 0
comme résultat (00000).
● La subtilité consiste, à chaque étape, à décaler le résultat
d’un cran vers la gauche.
● Quand on arrive au bout du premier multiplicateur, on
additionne simplement les résultats intermédiaires.
● La multiplication n’est donc rien d’autre qu’une
succession de déplacements et d’additions.

20
Informations de base (13/16) – Nombres entiers (11/12)
Entiers signés (8/9) – Multiplication (3/4)
● Exemples avec des entiers encodés sur 5 bits :

00101 (5) 01000 (8)


× 00011 (3) × 00011 (3)
00011
+ 00000
+ 00011
+ 00000
+ 00000
000001111 (15)
● Étapes pour 5×3 :
1. On multiplie 00011 par 1. 2. On multiplie 00011 par 0.
3. On multiplie 00011 par 1. 4. On multiplie 00011 par 0.
5. On multiplie 00011 par 0. 6. On Additionne.
21
Informations de base (14/16) – Nombres entiers (12/12)
Entiers signés (9/9) – Multiplication (4/4)
● Exemples avec des entiers encodés sur 5 bits :

00101 (5) 01000 (8)


× 00011 (3) × 00011 (3)
00011 00000
+ 00000 + 00000
+ 00011 + 00000
+ 00000 + 00011
+ 00000 + 00000
000001111 (15) 000011000 (24)
● Étapes pour 8×3 :
1. On multiplie 00011 par 0. 2. On multiplie 00011 par 0.
3. On multiplie 00011 par 0. 4. On multiplie 00011 par 1.
5. On multiplie 00011 par 0. 6. On Additionne.
22
Informations de base (15/16) – Nombres décimaux (1/2)
Principe
● On parle de nombre à virgule flottante (“floating-point”).

● On encode le signe, l’exposant et la mantisse séparément

avec une précision donnée.


● Exemple avec des nombres codés sur 32 bits :

1 7 24

Signe (s)

mantisse (m)
Exposant (e)
● Décodage : (-1)s·0,m·10e
● Exemples :
– 55 = (-1)2·0,55·102
– -253 = (-1)1·0,253·103
23
Informations de base (16/16) – Nombres décimaux (2/2)
Standards et opérateurs
● Existence des standards ANSI/IEEE pour encoder les

opérations des nombres à virgules flottantes et effectuer


des opérations dessus.
● Traitement des nombres à virgules flottantes identiques

pour tous les processeurs.


● Addition et soustraction sont plus compliquées que les

multiplications car il faut aligner les nombres (SHIFT)


puis renormaliser le résultat.
● Grand nombre d’opérations arithmétiques qui portent sur

l’exposant et sur la mantisse (logarithmiques, sinus, etc.).

24
Contenu
● Introduction
● Informations de base
● Informations multimédias
● Cryptage
● Stockage
● Conclusions

25
Informations multimédias (1/10) – Contenu
● Principe
● Image
● Son
● Vidéo

26
Informations multimédias (2/10) – Principe
● Utiliser un ensemble d’informations de base codées en
binaire pour représenter des informations multimédias.
● Informations multimédias sont donc aussi encodées
comme une série de bits.
● Plusieurs représentations existent :
– Différents ensembles d’informations de base.
– Utiliser des mécanismes de compression pour diminuer la
quantité de bits nécessaire au stockage (soit en limitant le
quantité d’informations de base ou leur précision).
● Informations multimédias sont généralement stockées
dans des documents (“fichiers”).

27
Informations multimédias (3/10) – Image (1/2)
Principe
● Manière “structurée” de stocker des informations

relatives à une image.


● La structuration d’un document image n’a aucune

signification sémantique.
● Deux caractéristiques essentielles :

– Résolution : Taille de l’image, c’est-à-dire le nombre de


lignes et de colonnes utilisées pour sa représentation. La
taille d’un document augmente avec la résolution.
– Profondeur : Nombre de couleurs différentes pouvant être
présentes dans l’image (on parle d’image “true color”
lorsque l’image peut contenir 16 millions de couleurs
différentes). La taille d’un document augmente avec la
profondeur.

28
Informations multimédias (4/10) – Image (2/2)
Formats
● Document image peut être compressé avec ou sans perte.

● Document image matricielle (“bitmap images”) :

– Image stockée sous forme d’un tableau de la taille de


l’image dont chaque cellule contient le code couleur du
point correspondant appelé pixel.
– Perte de qualité si on modifie la résolution de l’image.
– Ex: JPEG, TIFF, GIF et PNG (standard ouvert).
● Document image vectorisée (“vector graphics”) :
– Image est stockée sous forme d’un ensemble de primitives
graphiques (lignes, points, polygones, courbes).
– Aucune perte de qualité si on modifie la résolution de
l’image, mais documents plus gros.
– Ex: PNG (XML), SWF (Flash) et PostScript encapsulé.

29
Informations multimédias (5/10) – Son (1/3)
Principe (1/2)
● Manière “structurée” de stocker des informations

relatives à du son.
● Plupart des formats de documents son permettent

d’ajouter des méta-données descriptives (titre, interprète,


album, etc).
● Le principe de base est la numérisation qui permet de

passer d’un signal continu à un signal discret.

30
Informations multimédias (6/10) – Son (2/3)
Principe (2/2)
● Deux caractéristiques basées sur les étapes

d’échantillonnage et de quantification :
– Fréquence d’échantillonnage : Nombre de valeurs qui
seront prises par seconde. L’augmentation de la fréquence
d’échantillonnage améliore la qualité du son, mais
augmente également la taille des documents son.
– Résolution : Nombre de bits utilisé pour quantifier le son à
chaque valeur échantillonnée. L’augmentation de la
résolution augmente la qualité du son ainsi que la taille des
documents son.

31
Informations multimédias (7/10) – Son (3/3)
Formats
● Non compressé :

– Ensemble des données résultant de la numérisation.


– Ex: Waveform Audio Format (WAV) (CD audio).
● Compressé sans perte :
– Répétition de certaines séquences encodées une seule fois.
– Ex: Free Lossless Audio Codec (FLAC).
● Compressé avec perte :
– Oreille humaine ne distingue pas tout le spectre sonore.
– Fixer un seuil minimal et maximal au-delà desquels
l’information sonore ne sera pas encodée.
– Seuils fixent la qualité et le niveau de compression.
– Ex: MPEG-1 Audio Layer 3 (MP3), Vorbis Ogg,
Advanced Audio Coding (AAC).

32
Informations multimédias (8/10) – Vidéo (1/3)
Principe (1/2)
● Manière “structurée” de stocker des informations

relatives à du mouvement.
● Spectateur ne peut pas faire la différence entre une

succession rapide d’images (trames) et un mouvement


réel.
● Télévision : Nombre d’images par seconde varie de 25

trames/seconde (PAL/SECAM européen) à 30


trames/seconde (NTSC américain).

33
Informations multimédias (9/10 – Vidéo (2/3)
Principe (2/2)
● Principales caractéristiques :

– Fréquence d’échantillonnage : Nombre de trames par


seconde. L’augmentation de la fréquence
d’échantillonnage améliore la fluidité de la vidéo, mais
augmente également la taille du document vidéo.
– Résolution : Taille de l’image héritée du format image
utilisé par le document vidéo.
– Profondeur : Nombre de couleurs différentes pouvant être
présentes dans l’image hérité du format image utilisé par le
document vidéo.
● Définition théorique de la vidéo n’inclue pas le son :
– Stockés de manière indépendante dans le document.
– Prévoir des mécanismes de synchronisation.

34
Informations multimédias (10/10) – Vidéo (3/3)
Formats
● Document vidéo peut être compressé :

– Techniques de compression propres à l’images et au son.


– Jouer sur la redondance d’informations entre des trames
successives (ex: profiter du fait que l’arrière-plan d’une
séquence vidéo ne change quasiment pas).
● Utilisation possible de débit binaire variable :
– Maximiser la qualité vidéo en faisant varier le débit binaire
en fonction de la rapidité des mouvements.
– Assurer un flux en temps réel continu en fonction des
débits disponibles.
● Ex: Audio Video Interleave (AVI), MPEG, QuickTime,
Ogg, MP4.

35
Contenu
● Introduction
● Informations de base
● Informations multimédias
● Cryptage
● Stockage
● Conclusions

36
Cryptage (1/6) – Contenu
● Principe
● Symétrique
● Asymétrique

37
Cryptage (2/6) – Principe
● Modifier une information (série de bits) de manière à ce
que “personne” ne puisse retrouver l’information
originale hormis les personnes autorisées.
● Deux étapes :
– Cryptage : Transformer une information “en clair” en une
opération cryptée.
– Décryptage : Transformer une information cryptée en une
opération “en clair.
● Utiliser des opérations plus ou moins complexes (clés)
pour les transformations.
● Cryptage est surtout une nécessité lorsqu’une information
est échangée sur un réseau partagé (achats en ligne, Web
banking, etc.).

38
Cryptage (3/6) – Symétrique (1/2)
Principe
● Messages sont codés grâce à une clé secrète puis

transférés.
● Même clé est utilisée pour le codage et le décodage.

Bob Alice

Transfert
SeK(Message) SeK-1 (SeK(Message))

1. Bob code message avec la clé secrète.


2. Message codé est transféré (par exemple via un
réseau informatique).
3. Alice décode le message avec la clé secrète.
39
Cryptage (4/6) – Symétrique (2/2)
Faiblesses
● Chaque utilisateur doit connaître la clé secrète.

● La clé secrète doit donc être transférée une première fois

de manière non sécurisée.


● Une clé séparée est nécessaire pour chaque type de

transactions.
● Aucune garantie de l’identité de chaque partie.

40
Cryptage (5/6) – Asymétrique (1/2)
Clés privées et publiques
● Utiliser des paires de clés : Clé privées et clés publiques.

● Message est codé avec la clé publique et décodé avec la

clé privée.
● Chaque internaute possède une clé privée qui est connue

de lui seul.
● Clés publiques de tous les internautes sont accessibles et

téléchargeables par tout le monde.


● Étapes supplémentaires optionnelles :

– Négociation d’une clé privée propre à la session pour


utiliser le cryptage symétrique.
– Éviter de retrouver cette clé privée propre à la session en
connaissant les clés privés des deux parties.

41
Cryptage (6/6) – Asymétrique (2/2)
Principe

Bob Alice

Transfert
PuKAlice(Message) PrK-1Alice (PuKAlice(Message))

1. Bob télécharge la clé publique de Alice.


2. Bob code le message avec la clé publique de Alice.
3. Message codé est transféré (par exemple via un réseau
informatique).
4. Alice décode le message avec sa clé privée.
● Extension : Utiliser les clés privées et publiques pour
s’assurer de l’identité des parties (Amazon, Pascal Francq
et BNP Parisbas, etc.).

42
Contenu
● Introduction
● Informations de base
● Informations multimédias
● Cryptage
● Stockage
● Conclusions

43
Stockage (1/9) – Contenu
● Supports physiques
● Supports logiques

44
Stockage (2/9) – Supports physiques (1/4)
Ampoules ?
● Principe :

– Ampoule allumée stocke un 1.


– Ampoule éteinte stocke un 0
– En ASCII, l’encodage de la lettre A se stockerait :

45
Stockage (3/9) – Supports physiques (2/4)
Support magnétique
● Exemple : Disques durs à tambours.

● Polarité magnétique indique si c’est un 0 ou un 1 qui est

stocké.
Bobinage
de la tête

Tête de lecture /écriture


Polarisation
Couche magnétique

Sens de rotation

Tête de
lecture / écriture Piste

Secteur

Bras de
lecture / écriture
Moteur

46
Stockage (4/9) – Supports physiques (3/4)
Support optique
● Exemple : CD.

● Présence de réflecteurs ou de bosses qui dispersent la

lumière indique si c’est un 0 ou un 1 qui est stocké.


Couche protectrice
Couche réfléchissante
Couche transparente

Déplacement

Prisme Senseur

Laser

47
Stockage (5/9) – Supports physiques (4/4)
Mémoires électroniques non volatiles
● Exemples : Mémoire flash, sticks USB, cartes SD,

disques durs SSD.


● Principe : Mémoire électronique de type EEPROM

(transistors MOS) préservée sans alimentation.


● Avantages : Consomme très peu de courant et très rapide.

● Inconvénient : Durée de vie limitée (environ 10.000 à

100.000 écritures maximum).

48
Stockage (6/9) – Supports logiques (1/2)
● Les informations sont logiquement organisées sous forme
de fichiers au sein d’une arborescence de répertoires.
● Chaque fichier est repérable et accessible par son nom et
son chemin d’accès (y compris via le réseau avec les
URI).
● Son contenu dépend du programme qui le traite
(interprétation de la série de bits).
● Système d’exploitation propose des fonctions de haut
niveau pour manipuler les fichiers (lecture, copie,
déplacement, effacement, droits d’accès, etc.).

49
Stockage (7/9) – Supports logiques (1/3)
● Fichiers sont divisés en plusieurs fragments et stockés sur
25

le support physique en différents endroits.


Fich
ier1
.doc

Fic
Table d’index indique la position de chaque fragment sur 17

hie

r2 .
do
c
le support (ex: File Allocation Table (FAT) sous
13
37

Windows).
● Accès séquentiel aux fichiers en commençant par le
21

premier fragment (parcourir tout le fichier pour trouver


19

l’information visée).
25
oc
r1.d
ie
Fi c h
Table indexée
Fichier1.doc Fichier2.doc

Fic
17

hie
2.dr
25 17

oc
37

13
13 19

21 37

21
Fin Fin
19

Table indexée
Fichier1.doc Fichier2.doc 50
Stockage (8/9) – Supports logiques (2/3)
Quand on
supprime un
Table d’index (FAT) fichier, son entrée
est effacée de la
table d’index

L’emplacement
correspondant sur le
disque n’est pas
supprimé mais
simplement marqué
comme «libre» ou
«réutilisable». Le
fichier se trouve
toujours sur le disque
(même après avoir vidé
la corbeille) tant que
l’espace n’est pas
réutilisé

Partition principale (contient les fragments de fichiers)


51
Stockage (9/9) – Supports logiques (3/3)
Si on effaçait la table
Table d’index (FAT) d’index, on perdrait la
trace de tout le
contenu du disque
dur. Les fichiers
seraient toujours là,
mais ils seraient
invisibles (on ne
saurait plus quel
fichier se trouve où).
C’est ce qui se passe
quand on fait un
«formatage rapide».

Partition principale (contient les fragments de fichiers)


52
Contenu
● Introduction
● Informations de base
● Informations multimédias
● Cryptage
● Stockage
● Conclusions

53
Conclusions
● En informatique, toute information est représentée
(codée) sous forme binaire.
● Le codage n’est qu’une affaire de convention.
● L’ordinateur traite des bits (0 et 1) sans se préoccuper de
leur signification (i.e. de ce qu’ils représentent).
● Stockage de l’information binaire :
– Variété de supports physiques : magnétiques, optiques,
électroniques, etc.
– L’ordinateur regroupe logiquement les informations en
fichiers qui sont stockés par fragments.
– Une table permet de retrouver l’emplacement de chaque
fragment sur le support physique.
– On peut alors reconstituer le fichier et le lire d’un bout à
l’autre.

54
Introduction à l’informatique

Stockage et codage binaire

Leçon basée sur celle du Prof. NICOLAS VAN ZEEBROECK

Vous aimerez peut-être aussi