Vous êtes sur la page 1sur 4

ESPRIT 2020/2021

TD 1 Chaine de transmission
Partie 2 : Codage source

Exercice 1 : Codage source : Huffman


Soit l'alphabet {E;A;S;N;T}. le codage source suivant, donné comme arbre de Huffman:

1. Attribuer à chaque caractère son code binaire selon l’arbre de Huffman.

Symbole  :E A S N T

Code binaire : 1 00 010 0110 0111

2.
a. En utilisant l’arbre, déchiffrer le message m=00011001111011001101010.
 ANTENNES
b. Quelle sera la taille du codage du message en code ASCII (1 octet par
caractère)?
 taille du codage du message en code ASCII : 8*8=64 bits ( Le message est de 8
caractères donc la taille du codage du message sera donc 8 octets )
c. Quelle sera la taille minimale du codage du message en code à longueur fixe?
 ANTENNES est compose de 5 symboles (M=5)
Or n = ⌈𝑙𝑜𝑔2(𝑀)⌉
D’où n = ⌈𝑙𝑜𝑔2(5)⌉ = ln(5) / ln(2) = 2.32
=> n=3 bits
Taille du message en code à longueur fixe= 8*3=24 bits.
d. Quel est le taux de compression Huffman ?
 Taux de Compression Huffman = r1 = t𝑎𝑖𝑙𝑙𝑒 𝑑𝑢 𝑚𝑒𝑠𝑠𝑎𝑔𝑒 𝑒𝑛 Huffman / t𝑎𝑖𝑙𝑙𝑒
𝑑𝑢 𝑚𝑒𝑠𝑠𝑎𝑔𝑒 𝑒𝑛 ASCII
=>r1 = 23/64 = 0.36 = 36%
e. Quel est le taux de compression du codage à longueur fixe ?
r2 = Taille du message en code à longueur fixe/ t𝑎𝑖𝑙𝑙𝑒 𝑑𝑢 𝑚𝑒𝑠𝑠𝑎𝑔𝑒 𝑒𝑛 ASCII
=>r2 = 24/64 = 0.37 = 37%
f. Comparez et commentez les deux taux de compression trouvés
 r1 < r2
=> Le code de Huffman permet d’avoir une meilleure compression que le code à
longueur fixe pour le message `` ANTENNES ‘’
3.
a. Peut-on améliorer le taux de compression du code Huffman pour coder le
message m ? Justifiez votre réponse

 L’arbre de Huffman utilisé n’est pas optimal pour coder le message ANTENNES,
car le symbole ‘N’ a plus d’occurrence que les autres symboles. Tandis que le
code binaire proposé du symboles ‘N’ est sur plus de bits que les autres
symboles.
b. Proposez une solution et recalculer le nouveau taux de compression du code
Huffman proposé.

ESPRIT 2020/2021

Symbole  : A T S E N
Nb d’occ  : 1 1 1 2 3
Code binaire : 000 010 001 011 1

Taille du message = 18 bits

=> r3 = 18/64 = 0.28 =28%

Exercice 2 (Codage source : Huffman)


On considère le codage de Huffman suivant :
a -> 1
b -> 011
c -> 000
r -> 010
t -> 001

1. Décodez le message m = 011101000110111000.


 bartabac
2. On suppose que le texte initial était codé en ASCII (1 octet par caractère). Quel est le
gain en codant ce même texte avec le code de Huffman ci-dessus ?
 taille du codage du message en code ASCII : 8*8=64 bits
m = 18
r = t𝑎𝑖𝑙𝑙𝑒 𝑑𝑢 𝑚𝑒𝑠𝑠𝑎𝑔𝑒 𝑒𝑛 Huffman / t𝑎𝑖𝑙𝑙𝑒 𝑑𝑢 𝑚𝑒𝑠𝑠𝑎𝑔𝑒 𝑒𝑛 ASCII = 18/64 =
0.28
=> Le gain : G = 1-r
A.N: G = 1 - 0.28 = 0.72

3. Lorsqu'on transmet un texte codé par cette méthode, on doit également transmettre
le dictionnaire de décryptage.
a. Expliquer ce que cela peut signifier.
 à la réception , le récepteur doit disposer le même dictionnaire de Huffman pour
décoder son message correctement
b. Quelles conséquences sur le taux de compression ?
 On a r = Taille du message en code à longueur fixe + taille du dictionnaire / t𝑎𝑖𝑙𝑙𝑒 𝑑𝑢
𝑚𝑒𝑠𝑠𝑎𝑔𝑒 𝑒𝑛 ASCII
Donc le taux dans ce cas est plus élevé. Pour des fichiers de faible taille, il y a un
risque que l’en-tête contenant le dictionnaire plus les données compressées
dépassent la taille du fichier original.

Vous aimerez peut-être aussi