Download - Codage de l'information
Codage de l’informationModule d’Electronique Numérique
www.geii.eu 2
IntroductionStockage de l’information dans un système numérique Information de base : le bit l’information élémentaire
ne peut prendre que 2 valeurs 0 ou encore 0L (pour 0 logique) appelé aussi état bas. 1 ou encore 1L (pour 1 logique) appelé aussi état haut.
Entiers, Réels, Caractères doivent obéir à un codage se décomposant sous la forme d’une série de bits.
Exemple : Caractère A se code 0100 0001 en binaire. Entier 17 s’écrit 0001 0001 sous forme binaire.
– En précisant les bases de codage utilisées en indice, cela donne l’écriture suivante :
qui se lit 17 en base 10 égale 00010001 en base 2.2
www.geii.eu 3
Vocabulaire et définitionsVecteurs de bit
Bit de poids fort, toujours à gauche. Poids faible toujours à droite.
Différents formats 4 bits = 1 quartet 8 bits = 1 octet (byte) 16 bits = 1 mot (word) 32 bits = 1 double mot (dword)
3
www.geii.eu 4
Vocabulaire et définitionsComplément à 1 L’opérateur du complément à 1 se note
Exemple vectoriel :Complément à 2 L’opérateur complément à 2 se note On complémente à 1 et on ajoute 1 :
Exemple :
4
www.geii.eu 5
Codage des entiers non-signésCas général sur N bits
Les bits ont des indices allant de 0 à N-1. Chaque bit est affublé d’un poids de valeur 2numéro du bit
(en rouge) A s’écrit :
5
www.geii.eu 6
Codage non-signé sur 8 bitsVecteur et poids :
Expression :
Extrêmes : Minimum : maximum :
Intervalle :
www.geii.eu 7
Codage non-signé sur 16 bitsVecteur et poids :
Expression :
Extrêmes : Minimum : maximum :
Intervalle :
www.geii.eu 8
Méthodes de décompositionObjectif Décomposer en base 2 (binaire) d’un entier donné en
base 10 (décimal)Par la division euclidienne Rappel :
où est le reste de la division de par
Pour on a alors :
donc la division de par 2 permet d’obtenir . Le procédé peut se répéter jusqu’à ce que soit nul. 8
www.geii.eu 9
Méthodes de décompositionPar une méthode itérative Soit à décomposer sur N bits notés La méthode itérative repose sur l’algorithme suivant :
9
𝑁𝑜𝑡𝑒 : 𝐴𝑝𝑝𝑙𝑖𝑐𝑎𝑡𝑖𝑜𝑛𝑒𝑛𝑇𝐷
www.geii.eu 10
Codage des entiers signésCas général sur N bits
Les bits ont des indices allant de 0 à N-1. indique le signe de . A s’écrit :
10
www.geii.eu 11
Codage signé sur 8 bitsVecteur et poids :
Expression :
Extrêmes : Minimum : maximum :
Intervalle : 11
www.geii.eu 12
Codage signé sur 16 bitsVecteur et poids :
Expression :
Extrêmes : Minimum : maximum :
Intervalle :12
www.geii.eu 13
Méthodes de décompositionEn décalant par rapport à -128 Soit à coder -13 sur 8 bits signés :
c’est négatif donc on place le bit de signe à 1 cela revient à coder -128.
avec la partie positive sur les 7 bits restantes, il faut atteindre -13 en partant de -128 soit à coder positivement :X = -13+128 = 115 à coder sur 7 bits.X = 11510 = 111 00112
d’où : -1310 = 1111 00112En utilisant le complément à 2 :
13
www.geii.eu 14
Codage en virgule fixeCaractéristiques N bits sont réservés pour la partie entière et M bits pour
la partie fractionnaire format N.M . Le codage peut être signé ou non-signé. Calcul peu gourmand en surface silicium
Calculer en virgule = calculer sur des entiers.Domaine d’utilisation Calcul rapide sur des processeurs de traitement du
signal (DSP). Calcul sur des réels avec des microcontrôleurs.
14
www.geii.eu 15
Codage en virgule fixe non-signéDécomposition :
Equation :
Intervalle :
15
www.geii.eu 16
Codage en virgule fixe non-signéCas du format 1.7 non-signé :
Exemple :
16
www.geii.eu 17
Codage en virgule fixe signéDécomposition :
Equation :
Intervalle :
17
www.geii.eu 18
Méthode de codageCoder en virgule fixe = coder un entier ! Démonstration sur le cas non-signé
ce qui correspond au codage d’un entier non-signé. pour coder un nombre en virgule fixe au format N.M non-signé, on code l’entier sur N+M bits. Le principe se transpose au codage des flottants en virgule fixe signés. 18
www.geii.eu 19
Cas du format 1.15 signéPlus généralement, c’est le format 1.M signé qui est intéressant.Soit à coder au format 1.15Intervalle couvert :
Limitons-nous à l’intervalle
la multiplication n’entraine pas de dépassement de capacité et c’est l’immense atout de ce format !
19
www.geii.eu 20
Cas du format 1.15Exemple de codage en 1.15 : A=-0,77612On code l’entier en utilisant le complément à 2 :
Seule la partie entière peut être codée il y a une perte due à la faible précision du codage.
20
www.geii.eu 21
Codage en virgule flottanteOn peut représenter un réel :
où est le signe, est la mantisse, est l’exposant.Il répond à la norme IEEE754 qui permet de coder en : Dans tous les cas, l’intervalle de la mantisse est fixé :
donc, on ne code que la partie fractionnaire de m (Mantisse – 1) et on code l’exposant . simple précision, soit 32 bits :
double précision, soit 64 bits :– exposant sur 11 bits et « mantisse-1 » sur 52 bits.
double précision étendue, soit un codage sur 80 bits. 21
www.geii.eu 22
Exemple de codage en virgule flottanteSoit à coder -11,21332 Signe : Méthodologie :
Exposant :
Mantisse :– partie fractionnaire à coder sur 23 bits :– on code l’entier sur 23 bits non signé.
22