2. Objectifs du cours
Montrer comment est représentée/manipulée
l’information dans un ordinateur
Contraintes matérielles, d’efficacité, de
performances
Codage binaire
Etude de plusieurs natures de données
Les valeurs numériques
Les caractères
Les fichiers sons
Les images ? Voir un cours à suivre
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
3. Objectifs du cours
Comprendre et faire comprendre aux élèves
l’importance de la notion de code
Pas un code, mais des codes
Codage = une nécessité
Un codage ne nait pas de rien, au hasard
Eléments de théorie de l’information (ouverture)
Activités :
Le morse : un codage binaire; codage/décodage,
efficacité versus code ASCII.
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
4. Lien entre Lycée et codage
binaire
Annotation d’un professeur sur un bulletin à
propos d’un élève :
« aligne les 0 et 1; sera doué pour l’informatique
!»
« les perles des bulletins de notes », collection « les
perles », éditions Jean-Claude Gawsewitch
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
6. Information
Un ordinateur manipule des informations de natures
diverses
Valeurs numériques : naturels, réels, irrationnels (?), fractions,
complexes...
Données textuelles : texte brut, texte enrichi, texte avec format
Images : dessin libre, figures géométriques, photos
Sons : bruit, musique, parole
Vidéos : suite d’images + bande sonore
Ces informations sont stockées sous des formats très
divers
Ex : image BMP, DXF, EPS , GIF, Jpeg, Photo CD, PCX,
PICT, PS, TIFF, WPG
Ces informations sont :
Stockées
Manipulées
Calculées
Formation ISN 2013 - Réprésentation informations
Quels codages de ces
numérique de l'information - David Langlois
?
7. Information codage
Si je veux vous dire où j’habite (information), je
vais vous donner mon adresse selon un certain
code
Ce code :
Est le même pour nous tous
Est associé à :
un encodage : à partir du lieu où j’habite, je peux construire
mon adresse
un décodage : à partir de mon adresse, vous pouvez
retrouver ma maison
N’est pas ambigü
1 adresse un lieu
Formation Note : leRéprésentation l’adresse ne respecte pas vraiment
ISN 2013 - codage de
numérique de l'information - David Langlois
cette contrainte, mais comme nous humains, sommes
8. Information codage
Si je veux vous dire où j’habite (information), je
vais vous donner mon adresse selon un certain
code
Ce code :
Correspond aux utilisateurs et aux usages
efficacité
Nous sommes humains, manipulateurs de nombres et de
symboles, avec une culture commune, dans une société
structurée en départements et communes donc,
l’adresse est constituée d’un code postal, d’un nom de rue
facile à mémoriser car ancré dans notre histoire.
Dépend des contraintes du problème
L’être humain manipule surtout des symboles : impossibilité
Formation ISN 2013 - Réprésentation
numériqued’utiliser les- coordonnées géophysiques
de l'information David Langlois
10. Ordinateur, c’est quoi ?
Une machine manipulant de l’information, seul
(calcul de trajectoire de météorite), ou en
interaction avec l’utilisateur
Quand je dessine à l’ordinateur, l’ordinateur
manipule-t-il un dessin ?
Même réponse que pour la question « quand je joue au
tennis contre un mur, le mur joue-t-il au tennis du fait qu’il
me renvoie la balle ? »
Une machine permettant d’exécuter des
programmes
Une machine capable de lire des registres
mémoire, d’opérer des calculs sur ces registres et
Formation ISN 2013 - Réprésentation
de modifier les valeurs
numérique de l'information - David Langlois des registres
11. Ordinateur, c’est quoi ?
Utilisateur : niveau numérique et symbolique
Ordinateur : niveau purement électrique
Comment est construit le lien entre les deux
niveaux ?
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
12. ATTENTION
: vision
schématique
Transistor
Un composant électronique dôté de :
Deux entrées e1 et e2
e2
Une sortie s
e
TRANSISTO
R
s
1
e2 est l’alimentation du transistor
Deux états :
Pas de courant en e1 + courant en e2 courant
en s
Courant en e1 + courant en e2 pas de courant
en s
Quel intérêt ?
Présence/absence de courant : facile à mesurer
Mesure robuste aux interférences
e2=
NON
s
Formation ISN 2013une porte logique e
1 NON calcul logique
Simule - Réprésentation
numérique de l'information - David Langlois
1
13. Logique et binaire
Logique et binaire : une correspondance bijective
Logique : deux valeurs VRAI/FAUX
Binaire : deux valeurs 0/1
Possibilité de représenter les calculs numériques
binaires à l’aide des portes logiques
Binaire = représentation efficace de l’information
de toute nature.
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
14. Codage binaire d’un nombre
Codage en base 10 : utilisation de
0,1,2,3,4,5,6,7,8,9 pour coder les valeurs
numériques
Codage en base 2 : utilisation de 0,1 pour coder
les valeurs numériques
Tout entier en base n peut être codé en binaire.
Exemple
510 = 1012 car 5 = 1*22+0*21+1*20
En général
n
X
X10 = bnbn-1bn-2....b2b1b0 si et seulement si : i 0
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
i
b 2
i
15. Fabriquer un NON logique
(rappel)
NON
A
NON A
VRAI
FAUX
FAUX
VRAI
e2=1
e1=A
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
NON
NON A
16. Fabriquer un ET logique
= Brancher plusieurs transistors
alimentation = 1
e1 = A
NON
NON A
NON (NON A OU NON B )
= A ET B
e1 = B
NON
NON B
NON A OU NON B
NON
ET
A
B
A ET
B
VRAI
VRAI
VRAI
VRAI
FAUX
FAUX
FAUX
VRAI
FAUX
FAUX FAUX FAUX
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
Distribution du NON
17. Autres opérations logiques
NON et ET suffisants pour :
A OU B = NON ((NON A) ET (NON B))
A NON-OU B = NON (A OU B)
A OU-EXCLUSIF B = (A ET NON B) OU (NON A ET
B)
OU
NON-OU
OU-EXCLUSIF
A
B
A OU
B
A
B
A NOR
B
A
B
A XOR
B
VRAI
VRAI
VRAI
VRAI
VRAI
FAUX
VRAI
VRAI
FAUX
VRAI
FAUX
VRAI
VRAI
FAUX
FAUX
VRAI
FAUX
VRAI
FAUX
VRAI
VRAI
FAUX
VRAI
FAUX
FAUX
VRAI
VRAI
FAUX
FAUX
FAUX
FAUX
FAUX
VRAI
FAUX
FAUX
FAUX
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
18. Le calcul binaire et le calcul logique
1 bit = 0 ou 1
Opération sur les bits : complémentaire, somme,
multiplication
Convention
1 pour VRAI
0 pour FAUX
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
19. Complémentaire de 1 bit
Opération NON
NON
e
s
complémentair
e
VRAI FAU
X
e
s
1
0
FAU
X
0
1
VRAI
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
20. Multiplication de 2 bits
Mutiplication = opération ET
ET
e1
e2
MULTIPLICATION
s
e1
e2
s
VRAI VRAI VRAI
1
1
1
VRAI FAU
X
FAU
X
1
0
0
FAU
X
VRAI FAU
X
0
1
0
0
0
0
FAU
X
FAU
X
FAU
X
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
21. Somme sur 2 bits
Attention, 2 résultats : somme et retenue
SOMME
bit1
bit2
Somme Retenu
e
0
0
0
0
0
1
1
0
1
0
1
0
1
1
0
1
XOR
ET
A
B
A XOR B
A
B
A ET B
VRAI
VRAI
FAUX
VRAI
VRAI
VRAI
VRAI
FAUX
VRAI
VRAI
FAUX
FAUX
FAUX
VRAI
VRAI
FAUX
VRAI
FAUX
FAUX
FAUX
FAUX
Formation ISN 2013 - RéprésentationFAUX
FAUX
FAUX
numérique de l'information - David Langlois
22. Opération sur n bits
Connexions des circuits de base
Pour toute cette partie sur la structure d’un
ordinateur et le lien avec la logique booléenne, et
le codage binaire, voir le cours « Circuits
électroniques : du transistor, au calcul, à la
mémoire, en passant par les portes logiques »
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
23. Et les supports de stockage ?
Disque dur
Surface magnétique constituée de très petits
éléments
Deux valeurs +/ Têtes de lecture/écriture génèrent un champ
magnétique capable de changer la polarité
code binaire
Mémoire flash
basée sur des semi-conducteurs à deux états
Passage du courant passage d’un état à l’autre
code binaire
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
24. Et les supports de stockage ?
CD-ROM
Lecture laser : la surface réfléchissante renvoie le
laser
Vierge = surface opaque = laser non renvoyé
Ecriture = percer un trou minuscule dans la surface
opaque = la lumière laser est renvoyée
Deux états : lumière renvoyée ou non codage
binaire
CD-RW : couche d’éléments pouvant devenir
transparents/opaques suivant la chaleur imposée
binaire
Conclusion : les supports de stockage utilisent le
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
binaire
25. Mesure de la taille des données
1 octet = 8 bits
1 Ko = 1024 octets (~1000)
1 Mo = 1024 Ko (~1000)
1 Go = 1024 Mo (~1000)
1 To = 1024 Go (~1000)
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
26. Conclusion
L’ordinateur gère tout sous forme binaire
Les supports de stockage aussi
Le binaire en plus d’être adapté à la structure
même d’un ordinateur a d’autres avantages
Souplesse pour coder les éléments du monde
Opérations courantes (multiplication par 2)
simplicité + efficacité en machine
Donc tout doit être représenté sous cette forme
Etudions les codages en binaire de l’information
sous toutes ses formes
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
28. Les entiers (rappel)
Codage en base 10 : utilisation de
0,1,2,3,4,5,6,7,8,9 pour coder les valeurs
numériques
Codage en base 2 : utilisation de 0,1 pour coder
les valeurs numériques
Tout entier en base n peut être codé en binaire.
Exemple
510 = 1012 car 5 = 1*22+0*21+1*20
En général
n
X
X10 = bnbn-1bn-2....b2b1b0 si et seulement si : i 0
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
i
b 2
i
29. Opérations binaires
Complémentaire à 2 sur n bits
Si A est un nombre binaire, alors le
complémentaire c(A) est tel que :
c(A) = 2n-A
Remarque :
c(A) = (2n-1)-A+1
2n-1 en base 2 = que des 1
Donc :
(2n-1)-A : remplacer dans A les 1 par des 0 et les 0 par des
1
c(A) : puis ajouter 1
Calcul facile !
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
30. Complémentaire : exemple
Si A = 10310, C(A) = 25610-10310 = 15310
Retrouvons ce résultat avec la méthode de la
diapositive précédente
A
: code
011001112 (application de la
méthode classique)
28-1-A
: code 100110002 (on remplace les 1 par 0 et 0
par 1)
28-1-A+1 : code 100110012 (on ajoute 1)
Donc C(A)
: code 100110012
Finalement : 100110012 = 128+16+8+1 = 15310
On retombe sur le résultat ! Mais bon on n’est pas
surpris puisqu’on a prouvé que ce serait le cas dans
la diapositive précédente.
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
31. Opérations binaires
Somme
Multiplication
Base 2
Base
10
Base 10
0
1
1
1
7
1
0
0
5
1
1
1
7
1
0
1
0
1
0
1
0
0
0
5
1
1
1
1
0
1
1
1
1
R
1
Base 2
12
R
1
1
1
1
1
Multiplier par 2 = décalage de tous les bits à gauche, dernier bit
à0
Diviser par 2 = décalage de tous les bits à droite, perte du bit de
Formation
2013 - Réprésentation
poids faibleISNl'information - David Langlois
numérique de
35
32. Codage
Chaque valeur est codée sur un nombre préfixé de
bits
Exemples : 8, 16, 32, 64
Notez les puissances de 2, qui simplifient ensuite les
calculs
Note : 8 bits = 1 octet
1 bit = 2 valeurs possibles
2 bits = 4 valeurs possibles
...
n bits = 2n valeurs possibles
Un entier sur 8 bits peut coder 256 valeurs différentes
constante importante : un ordinateur a toujours des
limites finies.
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
33. Codage
2n valeurs, d’accord, mais lesquelles ?
Tout dépend du codage choisi !!
C’EST UN CHOIX
TOUT LE MONDE EST D’ACCORD SUR CE
CHOIX NORMALISATION
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
34. Codage des entiers naturels (1/2)
Sur n bits
Valeurs de 0 à 2n-1
Exemple sur 8 bits
000000002 = 010
000000012 = 110
000000102 = 210
...
111111102 = 25410
111111112 = 25510
Attention aux dépassements !
111111112+000000012 = ???
Réponse 000000002
000000002-000000012 = ???
Réponse 111111112
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
35. Codage des entiers naturels (2/2)
Deux représentations possibles (selon les
machines, les programmes)
Bit de poids faible à droite, bit de poids fort à
gauche
Bit de poids faible à gauche, bit de poids fort à
droite
Il faut le savoir et gérer en conséquence
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
36. Encodage/décodage des entiers
Quelle méthode appliquer à la main ?
Pour encoder de la base 10 à la base 2 ?
Pour décoder de la base 2 à la base 10 ?
Tester sur des exemples :
210 = 102
310 = 112
1510 = 11112
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
37. De la base 2 vers la base 10
x2 = 10110111
x10 ?
Appliquer la formule :
1*27+0*26+1*25+1*24+0*23+1*22+1*21+1*20
1*128+0*64+1*32+1*16+0*8+1*4+1*2+1*1
128+32+16+4+2+1
183
Mais de tête, difficile de calculer toutes ces
puissances de 2
Il vaut mieux énumérer les puissances de 2 en
partant de 1 (20) puis en multipliant par 2 à chaque
fois
Formation ISN 2013 - Réprésentation de droite à gauche
On lit alors les bits
numérique de l'information - David Langlois
38. De la base 10 vers la base 2
(1/2)
x10 = 183
x2 ?
On peut travailler sur la formule :
7
X
b 2 b
i
i 0
7
i
0
b 2 b
i
i 1
7
i
0
2
i 1
b 2
i
i 1
6
b
0
2
b 2
j 1
j 0
Donc, on a le bit de poids faible, ensuite, il faut
décoder le reste de la division par 2 sans ce bit
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
j
39. De la base 10 vers la base 2
(2/2)
Exemple avec 183
bit=1, reste à décoder 183/2 = 91
bit=1, reste à décoder 91/2 = 45
bit=1, reste à décoder 45/2 = 22
bit=0, reste à décoder 22/2 = 11
bit=1, reste à décoder 11/2 = 5
bit=1, reste à décoder 5/2 = 2
bit=0, reste à décoder 2/2 = 1
bit=1, reste à décoder 1/2 = 0
Résultat : 10110111
7
X
b 2 b
i
i 0
7
i
0
b 2 b
i
i 1
7
i
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
0
2
i 1
b 2
i
i 1
6
b
0
2
b 2
j 1
j 0
j
40. Exercices
Coder dans l’autre base (sur 8 bits)
4910
12610
110100102
010110112
Les autres bases (souvent utilisées en informatique
par les humains)
Base 8 : code avec 0,1,2,3,4,5,6,7
Base 16 : code avec 0,1,2,3,4,5,6,7,8,9, A, B, C, D, E, F
Coder 267110 en base 16.
Cet exercice est proposée dans la feuille d’exercices,
et donc corrigé dans la feuille de correction.
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
41. Codage des entiers relatifs (sol
1)
Sur n bits
1 bit pour le signe, n-1 bits pour la valeur
(+) Simple
(-) Dans les opérations, le bit de signe doit être géré
comme un cas particulier
(-) existence de 2 0 (non conceptuellement
satisfaisant), deux cas à gérer
Nombre de valeurs pouvant être codées : 2n-1 (et
pas 2n)
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
42. Codage des entiers relatifs (sol
2)
Sur n bits
Complément à 2
Si x est positif, représentation habituelle,
Si x est négatif, on code 2n-|x| (le bit de poids fort
est 1)
Exemple sur 8 bits
000001012 = 510
100001012 = 13310=256-12310=2810-12310 =>
codage de
-12310
(+) codage de 2n valeurs (un seul 0
00000000)
Formation ISN 2013 - Réprésentation
(+) lal'information - David Langlois
numérique de somme des relatifs ne subit pas
43. Codage des entiers relatifs (sol
2)
(-) codage moins évident que sol1
(+) la somme des relatifs ne subit pas d’exception
Base 2 sur 8 bits
Base 10
1
1
1
1
1
0
0
0
0
0
1
0
0
4
1
1
1
1
1
1
0
1
253 = 28-|x|
x = -3
0
0
0
0
0
0
0
1
1
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
44. Codage des entiers relatifs (sol3)
En excédent
Représentation d’un intervalle [-i,+j] par les valeurs
décalées de i
Exemple :
Intervalle [-127,128] sur 8 bits
[-127,128] contient bien 28=256 valeurs
Décalage de 127
Codage :
-127 codé par
00000000
-126 codé par
00000001
...
...
-1 codé par
01111110
0 codé par
01111111
1 codé par
10000000
....
...
127 codé par
11111110
128 codé par
11111111
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
45. Exercices/solutions
Coder -8910 sur 8 bits en :
Bit de signe
Complément à 2
Excédent à 127
Cet exercice fait partie de la feuille d’exercices, et
est donc corrigé dans la feuille de correction
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
46. Codage binaire des réels (1/3)
Les réels sont considérés en notation scientifique
x = +/- 0,a.10+/- b
x peut être réprésenté par 2 entiers a et b
(pour avoir 0,... il suffit d’adapter la valeur de b)
En binaire :
x = +/- 1,a.2+/- b
le 1 à gauche est toujours là par convention (voir diapo
suivante)
On ne représente pas 0,101.2-3 mais 1,01.2-4
a et b sont en binaire
Codage de la partie fractionnaire en puissances
négatives de 2
Exemple :
1,01011.22
3
= 101,011 = 1*22+0*21+1*20+0*2-1+1*2-2+1*2-
Formation ISN 2013 - Réprésentation
numérique1,01011.22 - David Langlois
de l'information
= 4+1+0,25+0,125
= 5,37510
47. Codage binaire des réels (2/3)
Norme IEEE 754
Un réel est représenté sur 32 bits :
1 bit pour le signe
8 bits en excédent à 127 pour l’exposant
La mantisse est représentée sous la forme 1,a. 23 bits pour a, le 1 à gauche n’est pas
représenté
Exemple pour 5,375
510 = 1012
Soit 1,01......*22
a commence par 01
b = 210; on représente 2+12710 = 100000012
Reste 21 (23 moins les 2 de 01 à droite de la virgule dans 1,01) bits pour représenter
0,375
Principe : si x = 0,b1b2... alors 2x = b1 + 0,b2...
2*0,375 = 0,75 0
2*0,75 = 1,5 1
2*0,5 = 1 1
5,37510 = 1,010112
Sur 32 bits :
010000001(1)01011000000000000000000 (le 1 est sous-entendu)
01000000101011000000000000000000
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
48. Codage binaire des réels (3/3)
Attention : seulement 232 valeurs possibles !
Les valeurs spéciales
Le zéro est représenté par 32 bits à 0.
Infini : exposant rempli de 1 et mantisse à 0
Code erreur (exemple résultat d’une division par 0) :
exposant rempli de 1 et mantisse différente de 0
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
49. Coder du texte en binaire
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
51. UTF-8 (1/2)
Coder tous les caractères de la norme unicode
Un octet ne suffit plus
Coder sur n octets gourmand en taille
codage sur un nombre variable d’octets
Codage Représentation binaire
Signification
UTF-8
0xxxxxxx
1 octet codant 1 à 7 bits
(ASCII)
110xxxxx 10xxxxxx
2 octets codant 8 à 11 bits
1110xxxx 10xxxxxx 10xxxxxx
3 octets codant 12 à 16
bits
11110xxx 10xxxxxx 10xxxxxx
10xxxxxx
Formation ISN 2013 - Réprésentation
4 octets codant 17 à 21
bits
numérique de l'information - David Langlois
52. UTF-8 (2/2)
(+) tous les caractères sont codables
(+) : compatibilité totale avec l’ASCII sur 7 bits
(-) taille variable décodage plus complexe
D’autres avantages/défauts plus techniques
Voir http://fr.wikipedia.org/wiki/UTF-8
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
53. Codage de valeurs symboliques
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
54. Codage des valeurs symboliques
Une possibilité : lister les valeurs possibles et
associer une valeur numérique à chaque possibilité
Exemple de la vie courante :
Numéro de sécurité sociale
Information HOMME codée par 1
Information FEMME codée par 2
Exemple d’une table de couleurs dans un fichier image
NOIR codé par 00000000 sur 8 bits
BLANC codé par 00000001 sur 8 bits
....
JAUNE COROT codé par 11111111 sur 8 bits
256 couleurs peuvent être codées
Il suffit de s’entendre sur la table de correspondance
(comme pour le code ASCII)
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
55. Codage des valeurs symboliques
On peut aussi coder la structure de l’objet
Exemple : coder un chemin de longueur au plus
255 :
1 octet : longueur du chemin
Puis :
00 : un pas vers le nord
01 : un pas vers le sud
10 : un pas vers l’est
11 : un pas vers l’ouest
un chemin de longueur 255 sera codé sur 1+255*2/8 ~=
65 octets
un chemin de longueur x<=255 sera codé sur
arondi_max(1+(x*2)/8) octets
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
56. Codage du son
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
57. Codage des fichiers son
Le son c’est quoi ?
Son simple : une onde sinusoïdale qui traverse l’espace
avec une fréquence donnée
LA = 440Hz
Vrai son : somme complexe de sinusoïdes se
mélangeant
Entendre c’est quoi ? (approximation)
C’est l’onde qui vient frapper la membrane de l’oreille
Le va-et-vient de cette membrane reproduit la fréquence
du son
Ce va-et-vient est codé par le cerveau et transmis sous
forme d’information qui sera traitée.
Conclusion : son = information continue
Or codage ordinateur = information discrète
Comment faire ?
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
58. Son : que reçoit l’ordinateur ?
Le microphone est composé d’une membrane qui
reproduit le même comportement que la membrane
de l’oreille
1er problème : toutes la valeurs de déplacement de la
membrane ne peuvent être codées par un ordinateur
L’information est arrondie : opération de quantification
2ième problème : l’ordinateur ne peut prendre une
mesure à tout instant (car il y a une infinité d’instants)
L’information est discrétisée (échantillonnage)
Théorème de Shannon : pour numériser un signal
sonore sans perte de qualité, il faut enregistrer les
échantillons avec une fréquence au moins 2 fois
supérieure à la fréquence max des fréquences
constituant le son.
Son numérisé : suite des valeurs enregistrées
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
59. Codage du son
Quelle fréquence d’échantillonnage ?
Oreille humaine : peut entendre des sons jusqu’à
22000 Hertz
CD audio = 44100Hz : suffisant pour coder les
sons audibles par un humain
Téléphone : 8000Hz : perte de qualité par
rapport au son d’origine
Mais tout à fait audible
Avantage : moins de données à faire transiter
Choix : compromis entre qualité et taille des
données
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
60. Codage du son
Combien de bits pour coder un échantillon ?
16 bits suffisants pour obtenir une bonne
précision
2H de musique à 44100Hz à 16 bits
2*3600*44100*16/8 = 63504000 octets = 635Mo <
capacité d’un CDROM
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
61. Son : formats de codage
WAV : suite des valeurs des échantillons
MIDI : Musical Instrument Digital Interface
Représentation symbolique de la musique
MP3 :
A tout instant, un son est une composition complexe de
sons simples (sinusoïde simple)
Résultat mathématique : la Tranformée de Fourier
permet de mesurer l’énergie sonore dans chaque
fréquence à tout instant
MP3 code cette information plus compacte que le suite
des échantillons
Compacité = efficacité pour transmettre les données
Perte de données, certes, mais supportable par l’humain +
prise en compte du modèle psycho-acoustique : les défauts
générés sont inaudibles par l’humain
Voir la section finale « compression avec perte ».
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
62. Image : codage
Voir le cours sur les images
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
64. Quantité d’information
Comment transférer une information ?
Quelle longueur de message ai-je besoin pour
transférer une information ?
Cette longueur est-elle représentative de la
« richesse » de l’information ?
Qu’est-ce qu’une information ?
Trop d’info tue l’info... Retrouve-t-on cela en
informatique ?
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
65. Une étude de cas : le Morse
Tirée de wikipédia
(http://fr.wikipedia.org/wiki/Th%C3%A9orie_de_l
%27information), consulté le 08/12/2011
Soit un message contenant les symboles POINT
et TRAIT codé en binaire (POINT=0, TRAIT=1)
On a vu que pour envoyer un message de
longueur 3, on a besoin de 3 bits
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
66. Une étude de cas : le Morse
Supposons que le langage français soit tel que
dans un message quelconque donné on a :
P(POINT) = 0,8
P(TRAIT) = 0,2
Et que l’apparition d’un caractère soit indépendante
du précédant
(hypothèses totalement fantaisistes)
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
67. Une étude de cas : le Morse
Alors chaque message aura une probabilité
d’apparition
P(POINT POINT POINT) = 0,8*0,8*0,8 = 0,512
P(POINT POINT TRAIT) = 0,128
P(POINT TRAIT POINT) = 0,128
P(TRAIT POINT POINT) = 0,128
P(POINT TRAIT TRAIT) = 0,032
P(TRAIT POINT TRAIT) = 0,032
P(TRAIT TRAIT POINT) = 0,032
P(TRAIT TRAIT TRAIT) = 0,008
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
68. Une étude de cas : le Morse
OBJECTIF : je veux raccourcir la longueur d’un
message
IDEE : donner un code court aux messages les plus
fréquents.
Message de 3 caractères
Longueur
POINT POINT POINT
POINT POINT TRAIT
POINT TRAIT POINT
TRAIT POINT POINT
POINT TRAIT TRAIT
TRAIT POINT TRAIT
Formation ISN 2013 - Réprésentation
TRAIT TRAIT POINT
numérique de l'information - David Langlois
TRAIT TRAIT TRAIT
Code
0
100
101
110
11100
11101
11110
11111
1
3
3
3
5
5
5
5
69. Une étude de cas : le Morse
Pour un message de longueur 3 :
Au minimum 1 bit (moins que 3 )
Au maximum 5 bits (plus que 3 )
Mais en moyenne ?
1*0,512
+3*0,128
+3*0,128
+3*0,128
+5*0,032
+5*0,032
+5*0,032
+1*0,008
= 2,184
En moyenne <3
Un message de longueur N sera codé sur N/3 triplets, soit
en moyenne une longueur de 0,728N plus petit que la
taille de n !
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
70. Une étude de cas : le Morse
Pourquoi ce codage, et pas un autre ?
Message de 3 caractères
POINT POINT POINT
POINT POINT TRAIT
POINT TRAIT POINT
TRAIT POINT POINT
POINT TRAIT TRAIT
TRAIT POINT TRAIT
TRAIT TRAIT POINT
TRAIT TRAIT TRAIT
Code
0
100
101
110
11100
11101
11110
11111
Voir :
http://fr.wikipedia.org/wiki/Codage_de_Huffman
Ou
http://www.commentcamarche.net/contents/video/huffman.php
3
Ou http://www.youtube.com/watch?v=Ml8brDWqUQ&feature=related (si vous résistez à la voix !)
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
71. Théorèmes de Shannon
Un théorème de Shannon énonce que :
« pour un message de longueur N, il est
impossible de trouver un code telle que la
longueur du code soit inférieure à 0,72N, mais il
est possible de coder le message de manière que
la longueur du code tende en moyenne vers
0,72N lorsque N augmente »
travaux de Shannon sur la théorie de
l’information
Objectif de Shannon : réduire le coût de transfert
de l’information (il travaillait pour Bell)
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
72. Idées de Shannon
Il y a un lien entre probabilité d’une information et la
quantité d’information associée
Si une information est rare, elle est précieuse
Si elle est commune, elle est peu informative
Quand on n’a pas d’information sur un monde, tout ce
qui arrive surprend tout est aléatoire, on ne peux
rien prédire
Toute information sur le monde permet de mieux
prédire ce qui va arriver
Il y a un lien entre information et probabilités des
événements
Probabilité uniforme = pas d’information
Formation ISN 2013 - Réprésentation
Probabilité non uniforme
numérique de l'information - David Langlois
= information
73. Entropie
Mesure de la quantité d’information donnée par
une source
Si une source génère n symboles, chaque
symbole i ayant une probabilité pi (somme des pi
= 1) on définit H :
H minimale si les n symboles sont équiprobables
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
74. Entropie
H maximale si les n symboles sont équiprobables
Entropie = mesure du chaos d’un système
Avec 2 symboles :
0.35
0.3
0.25
H
0.2
0.15
0.1
0.05
0.01
0.04
0.07
0.1
0.13
0.16
0.19
0.22
0.25
0.28
0.31
0.34
0.37
0.4
0.43
0.46
0.49
0.52
0.55
0.58
0.61
0.64
0.67
0.7
0.73
0.76
0.79
0.82
0.85
0.88
0.91
0.94
0.97
0
p
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
75. Retour au morse
Si les probabilités de POINT et TRAIT égales
Code d’un message de longueur N sur N bits
Si non équiprobables
Possibilité d’un code plus compact
information codage plus court
théorie qui a des applications concrètes très
importantes pour le transfert de données à coût
minimal
(remarque non anodine : Shannon était un employé
de Bell)
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
76. Théorie probabiliste de l’information
Attention
La notion de sémantique n’entre pas en ligne de
compte
Message = succession aléatoire de symboles.
Mais permet des développements théoriques qui
ont des applications concrètes
http://fr.wikipedia.org/wiki/Claude_Shannon
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
77. Autre approche de la quantité
d’information
La théorie algorithmique de l’information
Idée :
Si je veux vous donner une suite de n chiffres totalement
tirés au hasard, je suis obligé de vous les donner les uns
après les autres : je les liste
Pour 10 chiffres, mon message est de longueur 10
Pour 1 million de chiffres, mon message est de longueur 1
million
Si je veux vous donner la suite des n premiers nombre
premiers, il suffit que je vous dise « voici la suite des
nombres premiers »
Message très court pour 10 nombres premiers
Message tout aussi court pour les 1 million premiers nombres
premiers
Si vous ne connaissez pas la définition de « nombre
Formation premier- », il suffit que je vous donne l’algorithme de
ISN 2013 Réprésentation
numérique de l'information - David Langlois
génération des nombres premiers
78. Autre approche de la quantité
d’information
La théorie algorithmique de l’information
La quantité d’information d’une suite de valeurs est
définie comme étant la longueur du plus petit
programme permettant de générer cette suite :
Il n’y a pas plus d’information dans la suite des 10 premiers
nombres premiers que dans la suite des 1000 premiers
nombres premiers
Un programme permettant de générer 45, 56, 72 est :
Ecrire 45, 56, 72
Il existe toujours un programme permettant de générer une
suite, mais ce programme peut être plus grand que cette suite.
Le problème est de trouver un programme plus petit que la
suite à générer.
Théorie développée par Kolmogorov
http://fr.wikipedia.org/wiki/Th%C3%A9orie_algorithmique
Formation ISN 2013 - Réprésentation
_de_l%27information
numérique de l'information - David Langlois
79. Théorie de profondeur de
l’information
Une suite complexe est une suite qui est longue à
générer par le plus petit programme pouvant la
générer
Proposée par Bennet en 1988
(http://fr.wikipedia.org/wiki/Profondeur_de_Bennet
t)
Avantages
Plus proche de la notion de richesse d’une
information
Non additive : générer plusieurs fois la même suite
n’est pas plus lourd qu’une seule fois
Croissance lente de la complexité en fonction de la
difficulté
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois complexité demande du
Le temps compte : la
81. Compression
Coder l’information pour
la transmettre
La stocker
Canaux de transmission à capacité limitée
Supports de stockage à capacité limitée
importance d’avoir un message compact
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
82. Compression : définition
Réécrire une suite de bits sous une suite de bits
plus courte tout en gardant la même
information, ou en ayant une perte insignifiante.
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
83. Compression sans perte
L’étape de compression ne perd aucune
information
Il est possible de retrouver le message avec sa
taille originale
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
84. Compression sans perte : exemple 1
Attention : tout codage n’est pas parfait, et
certains vont avoir tendance à grossir certains
messages
Codale RLE (Run-Length-Encoding)
Remplacer toute suite de bits de la même valeur
par un couple (nombre de bits,valeur)
Exemple :
message initial :
00000000000000000000000000111111111111111111000000
0000000000000 (63 bits)
Soit 26 0, 18 1, 19 0
En binaire (ici, 1 octet = 1 bit de poids fort pour la valeur du
bit, 7 bits pour le nombre d’occurrences, mais ce n’est
qu’une proposition)
Formation message compressé : 000110101001001000010011 (24
ISN 2013 - Réprésentation
numérique de l'information - David Langlois
bits)
85. Compression sans perte : exemple 2
Codage de Huffman
Idée : coder les caractères les plus fréquents par
les codes les plus courts
Ne fonctionne pas au niveau des bits, mais au
niveau des caractères.
Déjà vu pour le codage du Morse (partie
quantification de l’information)
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
86. Compression sans perte : exemple 3
Code Beaudot
Idée :
On a à disposition plusieurs tables de correspondance code caractères
Plus des codes pour passer d’une table à une autre
Intérêt
Chaque table contient peu de valeurs différentes moins de bits pour coder une
valeur
Fonctionne si on ne passe pas trop souvent d’une table à l’autre
Algorithme pour décoder
c premier caractère
t table correspondant à la table de c
Tant que message non terminé
Lire le prochain caractère c
Si c est un caractère changeur de table alors
t table correspondant à la table de c
Sinon
écrire t[c]
Voir
Les deux tables « chiffres » et « lettre »
Un programme de codage/décodage
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
87. Compression sans perte
Les formats les plus connus :
zip
7z
rar
gzip
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
88. Compression avec perte
L’encodage perd une partie de l’information
initiale
Le message initial est perdu !
Applicable seulement si l’information initiale n’est
pas totalement utile
Exemple : une perte de qualité légère sur une
image n’est pas visible à l’oeil nu
Les techniques utilisent nos connaissances sur la
nature des données
On sait comment l’être humain visualise les
images, quelle information est vraiment importante
pour lui
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
89. Compression avec perte
Principalement basée sur 2 étapes :
Sous-échantillonage
Regroupement de portion du message en une seule unité
Exemple : plusieurs pixels en un seul
Les caractéristiques du pixel généré sont fonction des pixels
qu’il remplace
diminution du nombre d’éléments unitaires à coder
Quantification
Regroupement des valeurs possibles en une seule valeur
diminution du nombre de valeurs possible par code
diminution du nombre de bits nécessaires
Attention : les codages réels sont plus compliqués que
cela (connaissance sur la nature des données, utilisation
de méthodes informatiques, connaissance de la
répartition des données générées pour appliquer
d’autres techniques de compression supplémentaires...)
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois
90. Compression avec perte
Formats connus
JPEG (images)
MPEG (audio, vidéo)
Formation ISN 2013 - Réprésentation
numérique de l'information - David Langlois