Академический Документы
Профессиональный Документы
Культура Документы
Objectifs :
Sébastien JEAN
Pourquoi le codage ?
• Coder, c’est exprimer des concepts d’un « monde » d’une manière
appropriée à un autre : échange d’information
– Exemple :
• Un mot est une suite finie de symboles construite à partir d’un alphabet donné
– Exemple : u = 01000100010100101001
• On dit qu’un mot u est préfixe d’un mot v ssi ∃ un mot w tel que v = u.w
• On dit qu’un mot u est suffixe d’un mot v ssi ∃ un mot w tel que v = w.u
• Remarques :
• AN est l’ensemble des mots de longueur N (N≥0) pouvant être construits sur A
– ε ∉ A+
– A+ = A1 ∪ A2 ∪ A3 ∪ … ∪ AN ∪ …
– ε ∈ A*
– A* = A+ ∪ {ε}
– Toute partie de A* est appelée langage
© S.JEAN, avril 2005, v1.3 Codage, détection d’erreurs 5
Définitions préliminaires 4/4
• Exemples :
Soit A = {0,1}
– A0 = {ε}
– A1 = A = {0,1}
– A2 = {00,01,10,11}
– A3 = {000,001,010,011,100,101,110,111}
– A4 = {0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,
1011, 1100,1101,1110,1111}
ici A = {0,1}
0 1
00 01 10 11
– c(ε) = ε
– c(u.v) = c(u).c(v)
• c(ga) =0
• c(bu) =1
• c(meu) = 01
• c(zo) = 10
• c(ga) =0
• c(bu) =1
• c(meu) = 01
• c(zo) = 10
Quelle est la devise Shadock qui codée via c donne la suite 010110 ?
• ga bu ga bu bu ga « S’il n’y a pas de solution, c’est qu’il n’y a pas de problème »
• ga bu zo meu « En essayant continuellement, on finit par réussir. Donc, plus ça rate, plus on
a de chance que ça marche »
• meu meu zo « Il vaut mieux pomper même s’il ne se passe rien que risquer qu’il arrive
quelque chose de pire en ne pompant pas »
• ga bu ga bu zo « Pourquoi faire simple quand on peut faire compliqué ? »
• meu meu bu ga « Quand on ne sait pas où l’on va, il faut y aller !! … et le plus vite possible. »
• …
• Un code préfixe est un code pour lequel aucun mot n’est préfixe d’un autre
– Exemples :
– Remarque : dans l’arbre associé, les mots du code sont des feuilles
– parce qu’il produit en moyenne des mots moins longs qu’un autre
C1
blabla
C2
• Un codage de longueur fixe optimal (minimal) est celui où la longueur des mots
est la plus petite permettant d’associer un mot à chaque symbole
Email Email
Blah blah blah Blah blah blah
Codage Décodage
Email Email
Blah blah blah Blah blah blah
Codage Décodage
Altération
possible des
données
Adaptation, Détection
Optimisation d’erreur
d’espace
1-p
0 0
p p
1 1
1-p
• Soient r bits choisis parmi les N bits reçus. La probabilité pour que ces r bits soient
erronés et que les autres aient été bien transmis est :
p (1− p)
r N −r
C p (1− p)
r N −r N!
CN =
r r
N
Avec r!( N − r )!
© S.JEAN, avril 2005, v1.3 Codage, détection d’erreurs 15
Détection d’erreur : techniques
• Remarque :
• Si l’on veut pouvoir détecter des erreurs, le codage de canal induit toujours un
ajout d’information
– Exemple : 1001011 = x6 + x3 + x + 1
101101 = x5 + x3 + x2 + x0
+ 1011 = x3 + x+ x0
100110 = x5 + x2 + x
101101 = x5 + x3 + x2 + x0
- 1011 = - x3 -x - x0
100110 = x5 + x2 + x
• On transmet M’ = M.R
• Principe du décodage
• Principe :
• Exemple :
• Propriétés :
• Exemple :
• Définition :
0 ⊕ 0 = 0, 0 ⊕ 1 = 1, 1 ⊕ 0 = 1, 1 ⊕ 1 = 0
• Propriétés :
Associativité : (u ⊕ v) ⊕ w = u ⊕ (v ⊕ w) = u ⊕ v ⊕ w
Commutativité : u⊕v =v⊕u
Elément neutre : u⊕0 =u
Opposé : -u tel que u ⊕ -u = 0 , -u = u
– 10100 ⊕ 01 = 10101
Le poids d’un mot u, noté wt(u), est le nombre de bits de u non nuls
wt(u) = d(u,0)
• Propriétés :
wt (u ⊕ v) = d(u,v)
d (u ⊕ w, v ⊕ w) = d(u,v)
d = min d (u , v) = min wt (u ⊕ v)
u ,v∈C u , v∈C
u ≠v u ≠v
• Code détecteur :
C est dit t-détecteur s’il détecte les mots comportant de 1 à t erreurs, c’est-à-
dire les mots situés à une distance non nulle inférieure ou égale à t de C
C corrige v (en u) si :
• C est t-correcteur s’il corrige tous les mots ayant subi de 1 à t erreurs
C(a) = 00000
C(b) = 01010
C(c) = 10011
C(d) = 10110
C(e) = 11111