Sunteți pe pagina 1din 2

TD 3 D etection et correction des erreurs binaires

Exercice 1 Codes ` a contr ole de parit e


On souhaite transmettre le message M=Bonjour. Les codes ASCII (sur 7 bits) des caract` eres sont (en hexad ecimal) :
B j n o r u
42 6A 6E 6F 72 75
Q. 1.1 Quel est le message transmis en utilisant un VRC pair ?
Q. 1.2 Quel est le message transmis en utilisant un LRC impair ?
Q. 1.3 Quel est le message transmis en utilisant un VRC pair+LRC pair ?
Correction
Lettre ASCII Binaire VRC pair
B 42 1000010 0
o 6F 1101111 0
n 6E 1101110 1
j 6A 1101010 0
o 6F 1101111 0
u 75 1110101 1
r 72 1110010 0
LRC impair 0111110
VRC pair+LRC pair 1000001 0
Les s equences de bits envoy ees avec, soulign es, les bits/mots de parit e :
VRC pair 10000100 11011110 11011101 11010100 11011110 11101011 11100100
LRC impair 1000010 1101111 1101110 1101010 1101111 1110101 1110010 0111110
VRC+LRC pair 10000100 11011110 11011101 11010100 11011110 11101011 11100100 10000010
3
Exercice 2 Code polyn omial
On utilise un code de polyn ome g en erateur G(x) =x
5
+x
3
+x +1 pour transmettre le message M = 10110010.
Q. 2.1 Quel est le message M transmis ?
Correction
On suit la m ethode donn ee dans le cours (Diapo 8/16).
1. M(x) =x
7
+x
5
+x
4
+x
2. P(x) =M(x) degr e de G(x) = (x
7
+x
5
+x
4
+x) x
5
=x
12
+x
10
+x
9
+x
6
3. division de P(x) par G(x)
x
12
+ x
10
+ x
9
+ x
6
x
5
+x
3
+x +1
+ x
12
+ x
10
+ x
8
+ x
7
x
7
+x
4
+x
3
+1
x
9
+ x
8
+ x
7
+ x
6
+ x
9
+ x
7
+ x
5
+ x
4
x
8
+ x
6
+ x
5
+ x
4
+ x
8
+ x
6
+ x
4
+ x
3
x
5
+ x
3
+ x
5
+ x
3
+ x + 1
R(x) = x + 1
4. M

(x) =P(x) +R(x) =x


12
+x
10
+x
9
+x
6
+x +1
5. On envoie donc M=1011001000011.
1
3
Q. 2.2 On recoit le message M=11100111001. Ce message est-il correct ?
Correction
Pour que le message soit consid er e comme correct il faut que son polyn ome soit divisible par G(x) (i.e., que la division donne un reste de
0). Le polyn ome equivalent ` a M est M

(x) =x
10
+x
9
+x
8
+x
5
+x
4
+x
3
+1.
x
10
+ x
9
+ x
8
+ x
5
+ x
4
+ x
3
+ 1 x
5
+x
3
+x +1
+ x
10
+ x
8
+ x
6
+ x
5
x
5
+x
4
+x
2
+x
x
9
+ x
6
+ x
4
+ x
3
+ 1
+ x
9
+ x
7
+ x
5
+ x
4
x
7
+ x
6
+ x
5
+ x
3
+ 1
+ x
7
+ x
5
+ x
3
+ x
2
x
6
+ x
2
+ 1
+ x
6
+ x
4
+ x
2
+ x
R(x) = x
4
+ x + 1
R(x) = 0 Le message est donc erron e.
3
Exercice 3 Code de Hamming
Soit le code de Hamming de dictionnaire D = {000000, 000111, 101010, 111000, 111111}.
Q. 3.1 On recoit le message M = 001011. Quel etait le message envoy e ?
Correction
M nest pas un mot du dictionnaire. On calcule donc sa distance par rapport ` a chaque mot du dictionnaire (distance entre deux mots =
nombres de positions dans les deux mots auxquelles les bits diff` erent).
d(001011, 000000) = 3
d(001011, 000111) = 2
d(001011, 101010) = 2
d(001011, 111000) = 4
d(001011, 111111) = 3
La distance est minimale pour deux mots du dictionnaire : 000111 ou 101010. Le message etait sans doute un de ces deux mots mais on ne
peut pas le corriger.
3
Q. 3.2 On recoit le message M = 110101. Quel etait le message envoy e ?
Correction
d(110101, 000000) = 4
d(110101, 000111) = 3
d(110101, 101010) = 5
d(110101, 111000) = 3
d(110101, 111111) = 2
M nest pas dans le dictionnaire mais il est ` a une distance de 2 de 111111 et ` a une distance sup erieure ` a 2 des autres mots. On corrige donc
M en 111111.
3
2

S-ar putea să vă placă și