• Nie Znaleziono Wyników

Kody korekcyjne, czyli jak można wykryć i poprawić b la

N/A
N/A
Protected

Academic year: 2022

Share "Kody korekcyjne, czyli jak można wykryć i poprawić b la"

Copied!
111
0
0

Pełen tekst

(1)

Kody korekcyjne, czyli jak mo˙zna wykry´ c i poprawi´ c b la , d w przesy lanej informacji

MiNI Akademii Matematyki

Wydzia l Matematyki i Nauk Informacyjnych PW Agata Pilitowska

20 listopad 2010

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(2)

Cyfrowa transmisja danych

Schemat

Informacja Informacja odebrana c1c2. . . ck Transmisja=⇒ w1w2. . . wk

Informacja o kierunku wiatru

W = 00

Z = 10

Pn = 01

Transmisja

=⇒ 11

Pd = 11

(3)

Cyfrowa transmisja danych

Schemat

Informacja Informacja odebrana c1c2. . . ck Transmisja=⇒ w1w2. . . wk

Informacja o kierunku wiatru

W = 00

Z = 10

Pn = 01

Transmisja

=⇒ 11

Pd = 11

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(4)

Cyfrowa transmisja danych

Schemat

Informacja Informacja odebrana c1c2. . . ck Transmisja=⇒ w1w2. . . wk

Informacja o kierunku wiatru

W = 00

Z = 10

Pn = 01 Transmisja=⇒ 11

Pd = 11

(5)

Przyk lady funkcji koduja , cych

C1: Wiadomo´s´c powt´orzona

W = 00 7→ 0000

Z = 10 7→ 1010 Pn = 01 7→ 0101

Transmisja

=⇒ 1101

Pd = 11 7→ 1111

C2: Wiadomo´s´c z jednym symbolem kontrolnym

W = 00 7→ 000

Z = 10 7→ 101 Pn = 01 7→ 011

Transmisja

=⇒ 111

Pd = 11 7→ 110

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(6)

Przyk lady funkcji koduja , cych

C1: Wiadomo´s´c powt´orzona

W = 00 7→ 0000

Z = 10 7→ 1010

Pn = 01 7→ 0101 Transmisja=⇒ 1101 Pd = 11 7→ 1111

C2: Wiadomo´s´c z jednym symbolem kontrolnym

W = 00 7→ 000

Z = 10 7→ 101 Pn = 01 7→ 011

Transmisja

=⇒ 111

Pd = 11 7→ 110

(7)

Przyk lady funkcji koduja , cych

C1: Wiadomo´s´c powt´orzona

W = 00 7→ 0000

Z = 10 7→ 1010

Pn = 01 7→ 0101 Transmisja=⇒ 1101 Pd = 11 7→ 1111

C2: Wiadomo´s´c z jednym symbolem kontrolnym

W = 00 7→ 000

Z = 10 7→ 101 Pn = 01 7→ 011

Transmisja

=⇒ 111

Pd = 11 7→ 110

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(8)

Przyk lady funkcji koduja , cych

C1: Wiadomo´s´c powt´orzona

W = 00 7→ 0000

Z = 10 7→ 1010

Pn = 01 7→ 0101 Transmisja=⇒ 1101 Pd = 11 7→ 1111

C2: Wiadomo´s´c z jednym symbolem kontrolnym

W = 00 7→ 000

Z = 10 7→ 101

Pn = 01 7→ 011 Transmisja=⇒ 111 Pd = 11 7→ 110

(9)

Kodowanie z jednym symbolem kontrolnym

Numer PESEL

X1X2X3X4X5X6X7X8X9X10X11 X1X2X3X4X5X6 − data urodzenia X7X8X9 − liczba porza,dkowa X10 − K − parzysta M − nieparzysta

X11 − cyfra kontrolna

X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11

↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓

1 3 7 9 1 3 7 9 1 3 1

Funkcja kontrolna:

X1·1+X2·3+X3·7+X4·9+X5·1+X6·3+X7·7+X8·9+X9·1+X10·3+X11· 1

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(10)

Kodowanie z jednym symbolem kontrolnym

Numer PESEL

X1X2X3X4X5X6X7X8X9X10X11 X1X2X3X4X5X6 − data urodzenia X7X8X9 − liczba porza,dkowa X10 − K − parzysta M − nieparzysta

X11 − cyfra kontrolna

X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11

↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓

1 3 7 9 1 3 7 9 1 3 1

Funkcja kontrolna:

X1·1+X2·3+X3·7+X4·9+X5·1+X6·3+X7·7+X8·9+X9·1+X10·3+X11· 1

(11)

Kodowanie z jednym symbolem kontrolnym

Numer PESEL

X1X2X3X4X5X6X7X8X9X10X11 X1X2X3X4X5X6 − data urodzenia X7X8X9 − liczba porza,dkowa X10 − K − parzysta M − nieparzysta

X11 − cyfra kontrolna

X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11

↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓

1 3 7 9 1 3 7 9 1 3 1

Funkcja kontrolna:

X1·1+X2·3+X3·7+X4·9+X5·1+X6·3+X7·7+X8·9+X9·1+X10·3+X11· 1

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(12)

Numer PESEL

Przyk lad: 02070803628

0·1+2·3+0·7+7·9+0·1+8·3+0·7+3·9+6·1+2·3+8·1

=140

(13)

Numer PESEL

Przyk lad: 02070803628

0·1+2·3+0·7+7·9+0·1+8·3+0·7+3·9+6·1+2·3+8·1

=140

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(14)

Numer PESEL

Przyk lad: 02070803628

0·1+2·3+0·7+7·9+0·1+8·3+0·7+3·9+6·1+2·3+8·1 =140

(15)

Przyk lady funkcji koduja , cych cd.

C3: Wiadomo´s´c dwukrotnie powt´orzona W = 00 7→ 000000

Z = 10 7→ 101010 Pn = 01 7→ 010101

Transmisja

=⇒ 110101

Pd = 11 7→ 111111

Pn = 01 7→ 010101 Transmisja=⇒ 111101

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(16)

Przyk lady funkcji koduja , cych cd.

C3: Wiadomo´s´c dwukrotnie powt´orzona W = 00 7→ 000000

Z = 10 7→ 101010

Pn = 01 7→ 010101 Transmisja=⇒ 110101 Pd = 11 7→ 111111

Pn = 01 7→ 010101 Transmisja=⇒ 111101

(17)

Przyk lady funkcji koduja , cych cd.

C3: Wiadomo´s´c dwukrotnie powt´orzona W = 00 7→ 000000

Z = 10 7→ 101010

Pn = 01 7→ 010101 Transmisja=⇒ 110101 Pd = 11 7→ 111111

Pn = 01 7→ 010101 Transmisja=⇒ 111101

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(18)

Schemat kodowania Informacja

Inf .zakodowana

c1c2. . . ck

Kodowanie

7→ c1c2. . . ckck+1. . . cn

Transmisja

=⇒

Inf .odebrana Inf .otrzymana

w1w2. . . wn Dekodowanie

−→ f1f2. . . fk ???= c1c2. . . ck

(19)

Schemat kodowania Informacja

Inf .zakodowana

c1c2. . . ck Kodowanie7→

c1c2. . . ckck+1. . . cn

Transmisja

=⇒

Inf .odebrana Inf .otrzymana

w1w2. . . wn Dekodowanie

−→ f1f2. . . fk ???= c1c2. . . ck

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(20)

Schemat kodowania

Informacja Inf .zakodowana

c1c2. . . ck Kodowanie7→ c1c2. . . ckck+1. . . cn

Transmisja

=⇒

Inf .odebrana Inf .otrzymana

w1w2. . . wn Dekodowanie

−→ f1f2. . . fk ???= c1c2. . . ck

(21)

Schemat kodowania

Informacja Inf .zakodowana

c1c2. . . ck Kodowanie7→ c1c2. . . ckck+1. . . cn

Transmisja

=⇒

Inf .odebrana Inf .otrzymana

w1w2. . . wn Dekodowanie

−→ f1f2. . . fk ???= c1c2. . . ck

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(22)

Schemat kodowania

Informacja Inf .zakodowana

c1c2. . . ck Kodowanie7→ c1c2. . . ckck+1. . . cn

Transmisja

=⇒

Inf .odebrana

Inf .otrzymana

w1w2. . . wn

Dekodowanie

−→ f1f2. . . fk ???= c1c2. . . ck

(23)

Schemat kodowania

Informacja Inf .zakodowana

c1c2. . . ck Kodowanie7→ c1c2. . . ckck+1. . . cn

Transmisja

=⇒

Inf .odebrana

Inf .otrzymana

w1w2. . . wn Dekodowanie

−→

f1f2. . . fk ???= c1c2. . . ck

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(24)

Schemat kodowania

Informacja Inf .zakodowana

c1c2. . . ck Kodowanie7→ c1c2. . . ckck+1. . . cn

Transmisja

=⇒

Inf .odebrana Inf .otrzymana

w1w2. . . wn Dekodowanie

−→ f1f2. . . fk ???= c1c2. . . ck

(25)

Pomys lodawca teorii kodowania

Richard Hamming 1915 - ur. w Chicago

1937 - dyplom University of Nebraska 1942 - dokorat na University of Illinois

II Wojna ´Swiatowa - Profesor na Universytecie w Louisville 1945 - Projekt Manhattan

1946-76 - Bell Telephone Laboratories

1950 - ”Error detecting and error correcting codes”

1968 - Nagroda Turinga (Association for Computing Machinery) 1976-97 - Naval Postgraduate School

1998 - zm. w Monterey (Kalifornia)

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(26)

KODY BINARNE

ci ∈ {0, 1}

Informacja

c1c2. . . ck Kodowanie−→ Wektor kodowy

c1. . . ckck+1. . . cn

Wektory kodowe

C1 : 0000, 1010, 0101, 1111 C2 : 000, 101, 011, 110

C3 : 000000, 101010, 010101, 111111

(27)

KODY BINARNE

ci ∈ {0, 1}

Informacja

c1c2. . . ck Kodowanie−→ Wektor kodowy

c1. . . ckck+1. . . cn Wektory kodowe

C1 : 0000, 1010, 0101, 1111 C2 : 000, 101, 011, 110

C3 : 000000, 101010, 010101, 111111

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(28)

KODOWANIE

ci ∈ {0, 1}

Informacja

c1c2. . . ck Kodowanie−→ Wektor kodowy

c1. . . ckck+1. . . cn

Transmisja

=⇒ ????

Co to znaczy, ˙ze kod mo˙ze wykry´c lub poprawi´c b la,d w przesy lanej informacji?

Dlaczego jedne kody tylko wykrywaja,b le,dy a inne moga,je r´ownie˙z poprawi´c?

Dlaczego r´o˙zne kody wykrywaja,lub poprawiaja,r´o˙zne ilo´sci b le,d´ow?

(29)

KODOWANIE

ci ∈ {0, 1}

Informacja

c1c2. . . ck Kodowanie−→ Wektor kodowy

c1. . . ckck+1. . . cn Transmisja=⇒ ????

Co to znaczy, ˙ze kod mo˙ze wykry´c lub poprawi´c b la,d w przesy lanej informacji?

Dlaczego jedne kody tylko wykrywaja,b le,dy a inne moga,je r´ownie˙z poprawi´c?

Dlaczego r´o˙zne kody wykrywaja,lub poprawiaja,r´o˙zne ilo´sci b le,d´ow?

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(30)

KODOWANIE

ci ∈ {0, 1}

Informacja

c1c2. . . ck Kodowanie−→ Wektor kodowy

c1. . . ckck+1. . . cn Transmisja=⇒ ????

Co to znaczy, ˙ze kod mo˙ze wykry´c lub poprawi´c b la,d w przesy lanej informacji?

Dlaczego jedne kody tylko wykrywaja,b le,dy a inne moga,je r´ownie˙z poprawi´c?

Dlaczego r´o˙zne kody wykrywaja,lub poprawiaja,r´o˙zne ilo´sci b le,d´ow?

(31)

KODOWANIE

ci ∈ {0, 1}

Informacja

c1c2. . . ck Kodowanie−→ Wektor kodowy

c1. . . ckck+1. . . cn Transmisja=⇒ ????

Co to znaczy, ˙ze kod mo˙ze wykry´c lub poprawi´c b la,d w przesy lanej informacji?

Dlaczego jedne kody tylko wykrywaja,b le,dy a inne moga,je r´ownie˙z poprawi´c?

Dlaczego r´o˙zne kody wykrywaja,lub poprawiaja,r´o˙zne ilo´sci b le,d´ow?

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(32)

KODOWANIE

ci ∈ {0, 1}

Informacja

c1c2. . . ck Kodowanie−→ Wektor kodowy

c1. . . ckck+1. . . cn Transmisja=⇒ ????

Co to znaczy, ˙ze kod mo˙ze wykry´c lub poprawi´c b la,d w przesy lanej informacji?

Dlaczego jedne kody tylko wykrywaja,b le,dy a inne moga,je r´ownie˙z poprawi´c?

Dlaczego r´o˙zne kody wykrywaja,lub poprawiaja,r´o˙zne ilo´sci b le,d´ow?

(33)

Waga

Waga,wektora c = c1. . . cn nazywamy liczbe,jedynek w´sr´od symboli c1, . . . , cn i oznaczamy wt(c).

Przyk lad wt(1101) = 3 wt(0000) = 0 Odleg lo´s´c

Odleg lo´scia,mie,dzy dwoma wektorami c = c1. . . cn i f = f1. . . fn

nazywamy liczbe,wsp´o lrze,dnych, na kt´orych wektory te sie,r´o˙znia,i oznaczamy d (c, f).

Przyk lad

d (1110, 1100) = 1 d (1010,0000) = 2

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(34)

Waga

Waga,wektora c = c1. . . cn nazywamy liczbe,jedynek w´sr´od symboli c1, . . . , cn i oznaczamy wt(c).

Przyk lad wt(1101) = 3 wt(0000) = 0

Odleg lo´s´c

Odleg lo´scia,mie,dzy dwoma wektorami c = c1. . . cn i f = f1. . . fn

nazywamy liczbe,wsp´o lrze,dnych, na kt´orych wektory te sie,r´o˙znia,i oznaczamy d (c, f).

Przyk lad

d (1110, 1100) = 1 d (1010,0000) = 2

(35)

Waga

Waga,wektora c = c1. . . cn nazywamy liczbe,jedynek w´sr´od symboli c1, . . . , cn i oznaczamy wt(c).

Przyk lad wt(1101) = 3 wt(0000) = 0 Odleg lo´s´c

Odleg lo´scia,mie,dzy dwoma wektorami c = c1. . . cn i f = f1. . . fn

nazywamy liczbe,wsp´o lrze,dnych, na kt´orych wektory te sie,r´o˙znia,i oznaczamy d (c, f).

Przyk lad

d (1110, 1100) = 1 d (1010,0000) = 2

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(36)

Waga

Waga,wektora c = c1. . . cn nazywamy liczbe,jedynek w´sr´od symboli c1, . . . , cn i oznaczamy wt(c).

Przyk lad wt(1101) = 3 wt(0000) = 0 Odleg lo´s´c

Odleg lo´scia,mie,dzy dwoma wektorami c = c1. . . cn i f = f1. . . fn

nazywamy liczbe,wsp´o lrze,dnych, na kt´orych wektory te sie,r´o˙znia,i oznaczamy d (c, f).

Przyk lad

d (1110, 1100) = 1

(37)

Kod d lugo´sci n = 3

q

q t

q q

q q

t

000

111









Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(38)

Odleg lo´s´c kodu

Odleg lo´scia,kodu C nazywamy liczbe,

d := min{d (c, f) | c, f ∈ C, c 6= f}.

Przyk lad

C1 : {0000, 1010, 0101, 1111}, d = 2 C2 : {000, 101, 011, 110}, d = 2

C3 : {000000, 101010, 010101, 111111}, d = 3

(39)

Odleg lo´s´c kodu

Odleg lo´scia,kodu C nazywamy liczbe,

d := min{d (c, f) | c, f ∈ C, c 6= f}.

Przyk lad

C1 : {0000, 1010, 0101, 1111}, d = 2

C2 : {000, 101, 011, 110}, d = 2

C3 : {000000, 101010, 010101, 111111}, d = 3

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(40)

Odleg lo´s´c kodu

Odleg lo´scia,kodu C nazywamy liczbe,

d := min{d (c, f) | c, f ∈ C, c 6= f}.

Przyk lad

C1 : {0000, 1010, 0101, 1111}, d = 2 C2 : {000, 101, 011, 110}, d = 2

C3 : {000000, 101010, 010101, 111111}, d = 3

(41)

Odleg lo´s´c kodu

Odleg lo´scia,kodu C nazywamy liczbe,

d := min{d (c, f) | c, f ∈ C, c 6= f}.

Przyk lad

C1 : {0000, 1010, 0101, 1111}, d = 2 C2 : {000, 101, 011, 110}, d = 2

C3 : {000000, 101010, 010101, 111111}, d = 3

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(42)

Kule K (c, t)

Je´sli odleg lo´s´c kodu C wynosi d = 2t + 1 to, ˙ze dowolne dwa s lowa kodowe r´o˙znia,sie,na co najmniej d miejscach.

Kule K (c, t) o promieniu t wok´o l s l´ow kodowych c ∈ C sa, roz la,czne.

r c1

&% '$

t

r

r

r

rc2

&% '$

t

c1

Transmisja

=⇒ ????

(43)

Kule K (c, t)

Je´sli odleg lo´s´c kodu C wynosi d = 2t + 1 to, ˙ze dowolne dwa s lowa kodowe r´o˙znia,sie,na co najmniej d miejscach.

Kule K (c, t) o promieniu t wok´o l s l´ow kodowych c ∈ C sa, roz la,czne.

r c1

&%

'$

t

r

r

r

rc2

&%

'$

t

c1

Transmisja

=⇒ ????

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(44)

Kule K (c, t)

Je´sli odleg lo´s´c kodu C wynosi d = 2t + 1 to, ˙ze dowolne dwa s lowa kodowe r´o˙znia,sie,na co najmniej d miejscach.

Kule K (c, t) o promieniu t wok´o l s l´ow kodowych c ∈ C sa, roz la,czne.

r c1

&%

'$

t

r

r

r

rc2

&%

'$

t

c1

Transmisja

=⇒ ????

(45)

Kule K (c, t)

Je´sli odleg lo´s´c kodu C wynosi d = 2t + 1 to, ˙ze dowolne dwa s lowa kodowe r´o˙znia,sie,na co najmniej d miejscach.

Kule K (c, t) o promieniu t wok´o l s l´ow kodowych c ∈ C sa, roz la,czne.

r c1

&%

'$

r t

r

r

rc2

&%

'$

t

c1

Transmisja

=⇒ ????

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(46)

Kule K (c, t)

Je´sli odleg lo´s´c kodu C wynosi d = 2t + 1 to, ˙ze dowolne dwa s lowa kodowe r´o˙znia,sie,na co najmniej d miejscach.

Kule K (c, t) o promieniu t wok´o l s l´ow kodowych c ∈ C sa, roz la,czne.

r c1

&%

'$

r t

r

r

rc2

&%

'$

t

c1

Transmisja

=⇒ ????

(47)

Kule K (c, t)

Je´sli odleg lo´s´c kodu C wynosi d = 2t + 1 to, ˙ze dowolne dwa s lowa kodowe r´o˙znia,sie,na co najmniej d miejscach.

Kule K (c, t) o promieniu t wok´o l s l´ow kodowych c ∈ C sa, roz la,czne.

r c1

&%

'$

r t

r

r rc2

&%

'$

t

c1

Transmisja

=⇒ ????

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(48)

W lasno´sci detekcyjne kod´ ow

Twierdzenie

Warunkiem koniecznym i dostatecznym na to, aby kod C

umo˙zliwia l wykrycie t (lub mniej) b le,d´ow jest, aby odleg lo´s´c kodu by la r´owna co najmniej t + 1.

Przyk lad

C1 : {0000, 1010, 0101, 1111}, d = 2, wykrywa b le,dy pojedyncze C2 : {000, 101, 011, 110}, d = 2, wykrywa b le,dy pojedyncze C3 : {000000, 101010, 010101, 111111}, d = 3, wykrywa b le,dy podw´ojne

(49)

W lasno´sci detekcyjne kod´ ow

Twierdzenie

Warunkiem koniecznym i dostatecznym na to, aby kod C

umo˙zliwia l wykrycie t (lub mniej) b le,d´ow jest, aby odleg lo´s´c kodu by la r´owna co najmniej t + 1.

Przyk lad

C1 : {0000, 1010, 0101, 1111}, d = 2, wykrywa b le,dy pojedyncze

C2 : {000, 101, 011, 110}, d = 2, wykrywa b le,dy pojedyncze C3 : {000000, 101010, 010101, 111111}, d = 3, wykrywa b le,dy podw´ojne

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(50)

W lasno´sci detekcyjne kod´ ow

Twierdzenie

Warunkiem koniecznym i dostatecznym na to, aby kod C

umo˙zliwia l wykrycie t (lub mniej) b le,d´ow jest, aby odleg lo´s´c kodu by la r´owna co najmniej t + 1.

Przyk lad

C1 : {0000, 1010, 0101, 1111}, d = 2, wykrywa b le,dy pojedyncze C2 : {000, 101, 011, 110}, d = 2, wykrywa b le,dy pojedyncze

C3 : {000000, 101010, 010101, 111111}, d = 3, wykrywa b le,dy podw´ojne

(51)

W lasno´sci detekcyjne kod´ ow

Twierdzenie

Warunkiem koniecznym i dostatecznym na to, aby kod C

umo˙zliwia l wykrycie t (lub mniej) b le,d´ow jest, aby odleg lo´s´c kodu by la r´owna co najmniej t + 1.

Przyk lad

C1 : {0000, 1010, 0101, 1111}, d = 2, wykrywa b le,dy pojedyncze C2 : {000, 101, 011, 110}, d = 2, wykrywa b le,dy pojedyncze C3 : {000000, 101010, 010101, 111111}, d = 3, wykrywa b le,dy podw´ojne

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(52)

W lasno´sci korekcyjne kod´ ow

r c1

&%

'$

r t

r

r rc2

&%

'$

t

(53)

W lasno´sci korekcyjne kod´ ow

Twierdzenie

Kod C mo˙ze poprawi´c co najwy˙zej t b le,d´ow wtedy i tylko wtedy, gdy jego odleg lo´s´c wynosi co najmniej d = 2t + 1.

Przyk lad

C1 : {0000, 1010, 0101, 1111}, d = 2, nie poprawia b le,d´ow C2 : {000, 101, 011, 110}, d = 2, nie poprawia b le,d´ow

C3 : {000000, 101010, 010101, 111111}, d = 3, poprawia b le,dy pojedyncze

Kod C3

010101 Transmisja=⇒ 110101

d (110101, 000000) = 4, d (110101, 101010) = 5 d (110101,010101) = 1, d (110101, 111111) = 3

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(54)

W lasno´sci korekcyjne kod´ ow

Twierdzenie

Kod C mo˙ze poprawi´c co najwy˙zej t b le,d´ow wtedy i tylko wtedy, gdy jego odleg lo´s´c wynosi co najmniej d = 2t + 1.

Przyk lad

C1 : {0000, 1010, 0101, 1111}, d = 2, nie poprawia b le,d´ow

C2 : {000, 101, 011, 110}, d = 2, nie poprawia b le,d´ow

C3 : {000000, 101010, 010101, 111111}, d = 3, poprawia b le,dy pojedyncze

Kod C3

010101 Transmisja=⇒ 110101

d (110101, 000000) = 4, d (110101, 101010) = 5 d (110101,010101) = 1, d (110101, 111111) = 3

(55)

W lasno´sci korekcyjne kod´ ow

Twierdzenie

Kod C mo˙ze poprawi´c co najwy˙zej t b le,d´ow wtedy i tylko wtedy, gdy jego odleg lo´s´c wynosi co najmniej d = 2t + 1.

Przyk lad

C1 : {0000, 1010, 0101, 1111}, d = 2, nie poprawia b le,d´ow C2 : {000, 101, 011, 110}, d = 2, nie poprawia b le,d´ow

C3 : {000000, 101010, 010101, 111111}, d = 3, poprawia b le,dy pojedyncze

Kod C3

010101 Transmisja=⇒ 110101

d (110101, 000000) = 4, d (110101, 101010) = 5 d (110101,010101) = 1, d (110101, 111111) = 3

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(56)

W lasno´sci korekcyjne kod´ ow

Twierdzenie

Kod C mo˙ze poprawi´c co najwy˙zej t b le,d´ow wtedy i tylko wtedy, gdy jego odleg lo´s´c wynosi co najmniej d = 2t + 1.

Przyk lad

C1 : {0000, 1010, 0101, 1111}, d = 2, nie poprawia b le,d´ow C2 : {000, 101, 011, 110}, d = 2, nie poprawia b le,d´ow

C3 : {000000, 101010, 010101, 111111}, d = 3, poprawia b le,dy pojedyncze

Kod C3

010101 Transmisja=⇒ 110101

d (110101, 000000) = 4, d (110101, 101010) = 5 d (110101,010101) = 1, d (110101, 111111) = 3

(57)

W lasno´sci korekcyjne kod´ ow

Twierdzenie

Kod C mo˙ze poprawi´c co najwy˙zej t b le,d´ow wtedy i tylko wtedy, gdy jego odleg lo´s´c wynosi co najmniej d = 2t + 1.

Przyk lad

C1 : {0000, 1010, 0101, 1111}, d = 2, nie poprawia b le,d´ow C2 : {000, 101, 011, 110}, d = 2, nie poprawia b le,d´ow

C3 : {000000, 101010, 010101, 111111}, d = 3, poprawia b le,dy pojedyncze

Kod C3

010101 Transmisja=⇒ 110101

d (110101, 000000) = 4, d (110101, 101010) = 5 d (110101,010101) = 1, d (110101, 111111) = 3

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(58)

W lasno´sci korekcyjne kod´ ow

Twierdzenie

Kod C mo˙ze poprawi´c co najwy˙zej t b le,d´ow wtedy i tylko wtedy, gdy jego odleg lo´s´c wynosi co najmniej d = 2t + 1.

Przyk lad

C1 : {0000, 1010, 0101, 1111}, d = 2, nie poprawia b le,d´ow C2 : {000, 101, 011, 110}, d = 2, nie poprawia b le,d´ow

C3 : {000000, 101010, 010101, 111111}, d = 3, poprawia b le,dy pojedyncze

Kod C3

010101 Transmisja=⇒ 110101

d (110101, 000000) = 4, d (110101, 101010) = 5

(59)

Przyk lady kod´ ow binarnych

Kod powt´orzeniowy

Binarny kod powt´orzeniowy (d lugo´sci n) ma tylko dwa s lowa kodowe:

0 7→ 00 . . . 0

| {z }

n−razy

1 7→ 11 . . . 1

| {z }

n−razy

Odleg lo´s´c: d = n Wykrywa: n − 1 b le,d´ow

Poprawia: dla n = 2k + 1 → k b le,d´ow; dla n = 2k → k − 1 b le,d´ow Dekodowanie: Jako informacje,wys lana,przyjmuje ten cia,g, w kt´orym dany symbol wysta,pi l na wie,kszej liczbie pozycji

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(60)

Przyk lady kod´ ow binarnych

Kod powt´orzeniowy

Binarny kod powt´orzeniowy (d lugo´sci n) ma tylko dwa s lowa kodowe:

0 7→ 00 . . . 0

| {z }

n−razy

1 7→ 11 . . . 1

| {z }

n−razy

Odleg lo´s´c: d = n

Wykrywa: n − 1 b le,d´ow

Poprawia: dla n = 2k + 1 → k b le,d´ow; dla n = 2k → k − 1 b le,d´ow Dekodowanie: Jako informacje,wys lana,przyjmuje ten cia,g, w kt´orym dany symbol wysta,pi l na wie,kszej liczbie pozycji

(61)

Przyk lady kod´ ow binarnych

Kod powt´orzeniowy

Binarny kod powt´orzeniowy (d lugo´sci n) ma tylko dwa s lowa kodowe:

0 7→ 00 . . . 0

| {z }

n−razy

1 7→ 11 . . . 1

| {z }

n−razy

Odleg lo´s´c: d = n Wykrywa: n − 1 b le,d´ow

Poprawia: dla n = 2k + 1 → k b le,d´ow; dla n = 2k → k − 1 b le,d´ow Dekodowanie: Jako informacje,wys lana,przyjmuje ten cia,g, w kt´orym dany symbol wysta,pi l na wie,kszej liczbie pozycji

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(62)

Przyk lady kod´ ow binarnych

Kod powt´orzeniowy

Binarny kod powt´orzeniowy (d lugo´sci n) ma tylko dwa s lowa kodowe:

0 7→ 00 . . . 0

| {z }

n−razy

1 7→ 11 . . . 1

| {z }

n−razy

Odleg lo´s´c: d = n Wykrywa: n − 1 b le,d´ow

Poprawia: dla n = 2k + 1 → k b le,d´ow; dla n = 2k → k − 1 b le,d´ow

Dekodowanie: Jako informacje,wys lana,przyjmuje ten cia,g, w kt´orym dany symbol wysta,pi l na wie,kszej liczbie pozycji

(63)

Przyk lady kod´ ow binarnych

Kod powt´orzeniowy

Binarny kod powt´orzeniowy (d lugo´sci n) ma tylko dwa s lowa kodowe:

0 7→ 00 . . . 0

| {z }

n−razy

1 7→ 11 . . . 1

| {z }

n−razy

Odleg lo´s´c: d = n Wykrywa: n − 1 b le,d´ow

Poprawia: dla n = 2k + 1 → k b le,d´ow; dla n = 2k → k − 1 b le,d´ow Dekodowanie: Jako informacje,wys lana,przyjmuje ten cia,g, w kt´orym dany symbol wysta,pi l na wie,kszej liczbie pozycji

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(64)

Przyk lady kod´ ow binarnych cd.

Kod kontroli parzysto´sci

Binarny kod kontroli parzysto´sci d lugo´sci n powstaje przez dodanie na ko´ncu ka˙zdej wysy lanej wiadomo´sci c1. . . cn−1, jednego

dodatkowego symbolu cn: cn:=

 1, gdy suma Pn−1

i =1 ci jest nieparzysta, 0, gdy suma Pn−1

i =1 ci jest parzysta

Przyk lad dla n = 3

Kod C2 jest kodem kontroli parzysto´sci d lugo´sci n = 3: 00 7→ 000, 10 7→ 101, 01 7→ 011, 11 7→ 110

Odleg lo´s´c: d = 2

Wykrywa b le,dy pojedyncze

(65)

Przyk lady kod´ ow binarnych cd.

Kod kontroli parzysto´sci

Binarny kod kontroli parzysto´sci d lugo´sci n powstaje przez dodanie na ko´ncu ka˙zdej wysy lanej wiadomo´sci c1. . . cn−1, jednego

dodatkowego symbolu cn: cn:=

 1, gdy suma Pn−1

i =1 ci jest nieparzysta, 0, gdy suma Pn−1

i =1 ci jest parzysta Przyk lad dla n = 3

Kod C2 jest kodem kontroli parzysto´sci d lugo´sci n = 3:

00 7→ 000, 10 7→ 101, 01 7→ 011, 11 7→ 110

Odleg lo´s´c: d = 2

Wykrywa b le,dy pojedyncze

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(66)

Przyk lady kod´ ow binarnych cd.

Kod kontroli parzysto´sci

Binarny kod kontroli parzysto´sci d lugo´sci n powstaje przez dodanie na ko´ncu ka˙zdej wysy lanej wiadomo´sci c1. . . cn−1, jednego

dodatkowego symbolu cn: cn:=

 1, gdy suma Pn−1

i =1 ci jest nieparzysta, 0, gdy suma Pn−1

i =1 ci jest parzysta Przyk lad dla n = 3

Kod C2 jest kodem kontroli parzysto´sci d lugo´sci n = 3:

00 7→ 000, 10 7→ 101, 01 7→ 011, 11 7→ 110 Odleg lo´s´c: d = 2

Wykrywa b le,dy pojedyncze

(67)

Przyk lady kod´ ow binarnych cd.

Kod kontroli parzysto´sci

Binarny kod kontroli parzysto´sci d lugo´sci n powstaje przez dodanie na ko´ncu ka˙zdej wysy lanej wiadomo´sci c1. . . cn−1, jednego

dodatkowego symbolu cn: cn:=

 1, gdy suma Pn−1

i =1 ci jest nieparzysta, 0, gdy suma Pn−1

i =1 ci jest parzysta Przyk lad dla n = 3

Kod C2 jest kodem kontroli parzysto´sci d lugo´sci n = 3:

00 7→ 000, 10 7→ 101, 01 7→ 011, 11 7→ 110 Odleg lo´s´c: d = 2

Wykrywa b le,dy pojedyncze

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(68)

Kod kontroli parzysto´sci

q

q s

s s

s q

q

000

011

110 101









((((((((((((

@

@

@

@

@

@

@

@ H

HH H

J J

J J

J J J

(69)

Binarna reprezantacja liczby n

m ∈ N

Ka˙zda,liczbe,naturalna,0 ≤ n ≤ 2m− 1 mo˙zna przedstawi´c w postci:

n =a0· 20+a1· 21+ . . . +am−1· 2m−1.

Binarny cia,g d lugo´sci m

a0a1. . . am−1

nazywamy binarna,reprezantacja,liczby n (d lugo´sci m) Binarna reprezentacja liczby 6 ≤ 23− 1 d lugo´sci m = 3

6 =0· 20+1· 21+1· 24 Binarna reprezentacja: a0a1a2=011

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(70)

Binarna reprezantacja liczby n

m ∈ N

Ka˙zda,liczbe,naturalna,0 ≤ n ≤ 2m− 1 mo˙zna przedstawi´c w postci:

n =a0· 20+a1· 21+ . . . +am−1· 2m−1. Binarny cia,g d lugo´sci m

a0a1. . . am−1

nazywamy binarna,reprezantacja,liczby n (d lugo´sci m)

Binarna reprezentacja liczby 6 ≤ 23− 1 d lugo´sci m = 3

6 =0· 20+1· 21+1· 24 Binarna reprezentacja: a0a1a2=011

(71)

Binarna reprezantacja liczby n

m ∈ N

Ka˙zda,liczbe,naturalna,0 ≤ n ≤ 2m− 1 mo˙zna przedstawi´c w postci:

n =a0· 20+a1· 21+ . . . +am−1· 2m−1. Binarny cia,g d lugo´sci m

a0a1. . . am−1

nazywamy binarna,reprezantacja,liczby n (d lugo´sci m) Binarna reprezentacja liczby 6 ≤ 23− 1 d lugo´sci m = 3

6 =0· 20+1· 21+1· 24

Binarna reprezentacja: a0a1a2=011

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(72)

Binarna reprezantacja liczby n

m ∈ N

Ka˙zda,liczbe,naturalna,0 ≤ n ≤ 2m− 1 mo˙zna przedstawi´c w postci:

n =a0· 20+a1· 21+ . . . +am−1· 2m−1. Binarny cia,g d lugo´sci m

a0a1. . . am−1

nazywamy binarna,reprezantacja,liczby n (d lugo´sci m) Binarna reprezentacja liczby 6 ≤ 23− 1 d lugo´sci m = 3

6 =0· 20+1· 21+1· 24 Binarna reprezentacja: a0a1a2 =011

(73)

Kod Hamminga H

m

m ∈ N, n = 2m− 1, 1 ≤ i ≤ 2m− 1

Hm =

w11 . . . w1i . . . w1n

← w1

w21 . . . w2i . . . w2n

← w2

. . . . wj 1 . . . wji . . . wjn

← wj

. . . . wm1 . . . wmi . . . wmn

← wm

w11c1+ w12c2+ . . . + w1ncn = 0 . . . = 0 wj 1c1+ wj 2c2+ . . . + wjncn = 0 . . . = 0 wm1c1+ wm2c2+ . . . + wmncn = 0

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(74)

Kod Hamminga H

m

m ∈ N, n = 2m− 1, 1 ≤ i ≤ 2m− 1

Hm =

w11 . . . w1i . . . w1n ← w1

w21 . . . w2i . . . w2n ← w2 . . . .

wj 1 . . . wji . . . wjn ← wj

. . . .

wm1 . . . wmi . . . wmn ← wm

w11c1+ w12c2+ . . . + w1ncn = 0 . . . = 0 wj 1c1+ wj 2c2+ . . . + wjncn = 0 . . . = 0 wm1c1+ wm2c2+ . . . + wmncn = 0

(75)

Kod Hamminga H

m

m ∈ N, n = 2m− 1, 1 ≤ i ≤ 2m− 1

Hm =

w11 . . . w1i . . . w1n ← w1

w21 . . . w2i . . . w2n ← w2 . . . .

wj 1 . . . wji . . . wjn ← wj

. . . .

wm1 . . . wmi . . . wmn ← wm

w11c1+ w12c2+ . . . + w1ncn = 0 . . . = 0 wj 1c1+ wj 2c2+ . . . + wjncn = 0 . . . = 0 wm1c1+ wm2c2+ . . . + wmncn = 0

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(76)

Kod Hamminga H

m

w11c1+ w12c2+ . . . + w1ncn = 0 . . . = 0

wj 1c1+ wj 2c2+ . . . + wjncn = 0 (1) . . . = 0

wm1c1+ wm2c2+ . . . + wmncn = 0

Definicja

Kodem Hamminga Hm nazywamy kod d lugo´sci n = 2m− 1 o m symbolach sprawdzaja,cych: c1, c2, c4, . . . , c2m−1, dla kt´orego c = c1. . . cn∈ Hm wtedy i tylko wtedy, gdy c1. . . cn spe lniaja, ka˙zde z r´owna´n (1).

(77)

Kod Hamminga H

m

Podstawowe w lasno´sci

m symboli kontrolnych: c1, c2, c4, . . . , c2m−1 n − m symboli wiadomo´sci

2n−m s l´ow kodowych

Wykrywa b le,dy podw´ojne oraz poprawia b le,dy pojedyncze (d = 3)

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(78)

Kod Hamminga H

m

Podstawowe w lasno´sci

m symboli kontrolnych: c1, c2, c4, . . . , c2m−1

n − m symboli wiadomo´sci 2n−m s l´ow kodowych

Wykrywa b le,dy podw´ojne oraz poprawia b le,dy pojedyncze (d = 3)

(79)

Kod Hamminga H

m

Podstawowe w lasno´sci

m symboli kontrolnych: c1, c2, c4, . . . , c2m−1 n − m symboli wiadomo´sci

2n−m s l´ow kodowych

Wykrywa b le,dy podw´ojne oraz poprawia b le,dy pojedyncze (d = 3)

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(80)

Kod Hamminga H

m

Podstawowe w lasno´sci

m symboli kontrolnych: c1, c2, c4, . . . , c2m−1 n − m symboli wiadomo´sci

2n−m s l´ow kodowych

Wykrywa b le,dy podw´ojne oraz poprawia b le,dy pojedyncze (d = 3)

(81)

Kod Hamminga H

m

Podstawowe w lasno´sci

m symboli kontrolnych: c1, c2, c4, . . . , c2m−1 n − m symboli wiadomo´sci

2n−m s l´ow kodowych

Wykrywa b le,dy podw´ojne oraz poprawia b le,dy pojedyncze (d = 3)

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(82)

Kod Hamminga H

2

m = 2, n = 22− 1 = 3

Binarne reprezentacje d lugo´sci m = 2 liczb: 1 10, 2 01, 3 11

H2 = 0 1 1 = w1 1 0 1 = w2 c3 - symbol wiadomo´sci; c1, c2 - symbole kontrolne

0 · c1 + 1 · c2 + 1 · c3 = 0

1 · c1 + 0 · c2 + 1 · c3 = 0 ⇔ c2 + c3 = 0 c1 + c3 = 0 ⇔ c1 = c2 = c3

H2

Kod Hamminga H2 jest kodem powt´orzeniowym d lugo´sci n = 3

(83)

Kod Hamminga H

2

m = 2, n = 22− 1 = 3

Binarne reprezentacje d lugo´sci m = 2 liczb:

1 10, 2 01, 3 11

H2 = 0 1 1 = w1 1 0 1 = w2 c3 - symbol wiadomo´sci; c1, c2 - symbole kontrolne

0 · c1 + 1 · c2 + 1 · c3 = 0

1 · c1 + 0 · c2 + 1 · c3 = 0 ⇔ c2 + c3 = 0 c1 + c3 = 0 ⇔ c1 = c2 = c3

H2

Kod Hamminga H2 jest kodem powt´orzeniowym d lugo´sci n = 3

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(84)

Kod Hamminga H

2

m = 2, n = 22− 1 = 3

Binarne reprezentacje d lugo´sci m = 2 liczb:

1 10, 2 01, 3 11

H2= 0 1 1 = w1 1 0 1 = w2

c3 - symbol wiadomo´sci; c1, c2 - symbole kontrolne 0 · c1 + 1 · c2 + 1 · c3 = 0

1 · c1 + 0 · c2 + 1 · c3 = 0 ⇔ c2 + c3 = 0 c1 + c3 = 0 ⇔ c1 = c2 = c3

H2

Kod Hamminga H2 jest kodem powt´orzeniowym d lugo´sci n = 3

(85)

Kod Hamminga H

2

m = 2, n = 22− 1 = 3

Binarne reprezentacje d lugo´sci m = 2 liczb:

1 10, 2 01, 3 11

H2= 0 1 1 = w1 1 0 1 = w2 c3 - symbol wiadomo´sci; c1, c2 - symbole kontrolne

0 · c1 + 1 · c2 + 1 · c3 = 0

1 · c1 + 0 · c2 + 1 · c3 = 0 ⇔ c2 + c3 = 0 c1 + c3 = 0

⇔ c1 = c2 = c3

H2

Kod Hamminga H2 jest kodem powt´orzeniowym d lugo´sci n = 3

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(86)

Kod Hamminga H

2

m = 2, n = 22− 1 = 3

Binarne reprezentacje d lugo´sci m = 2 liczb:

1 10, 2 01, 3 11

H2= 0 1 1 = w1 1 0 1 = w2 c3 - symbol wiadomo´sci; c1, c2 - symbole kontrolne

0 · c1 + 1 · c2 + 1 · c3 = 0

1 · c1 + 0 · c2 + 1 · c3 = 0 ⇔ c2 + c3 = 0 c1 + c3 = 0 ⇔ c1 = c2 = c3

H2

Kod Hamminga H2 jest kodem powt´orzeniowym d lugo´sci n = 3

(87)

Kod Hamminga H

2

m = 2, n = 22− 1 = 3

Binarne reprezentacje d lugo´sci m = 2 liczb:

1 10, 2 01, 3 11

H2= 0 1 1 = w1 1 0 1 = w2 c3 - symbol wiadomo´sci; c1, c2 - symbole kontrolne

0 · c1 + 1 · c2 + 1 · c3 = 0

1 · c1 + 0 · c2 + 1 · c3 = 0 ⇔ c2 + c3 = 0 c1 + c3 = 0 ⇔ c1 = c2 = c3

H2

Kod Hamminga H2 jest kodem powt´orzeniowym d lugo´sci n = 3

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(88)

Dekodowanie kod´ ow Hamminga

c1c2c3∈ H2

H2 =

0 1 1 1 0 1

c2 + c3 = 0 c1 + c3 = 0

000 001= f1f2f3 = c1c2(c3+ 1) ⇒ f2 + f3 = c2 + c3+ 1

= 1

f1 + f3 = c1 + c3+ 1

= 1

(89)

Dekodowanie kod´ ow Hamminga

c1c2c3∈ H2

H2 =

0 1 1 1 0 1

c2 + c3 = 0 c1 + c3 = 0

000 001= f1f2f3 = c1c2(c3+ 1)

⇒ f2 + f3 = c2 + c3+ 1

= 1

f1 + f3 = c1 + c3+ 1

= 1

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(90)

Dekodowanie kod´ ow Hamminga

c1c2c3∈ H2

H2 =

0 1 1 1 0 1

c2 + c3 = 0 c1 + c3 = 0

000 001= f1f2f3 = c1c2(c3+ 1) ⇒ f2 + f3 = c2 + c3+ 1

= 1

f1 + f3 = c1 + c3+ 1

= 1

(91)

Dekodowanie kod´ ow Hamminga

c1c2c3∈ H2

H2 =

0 1 1 1 0 1

c2 + c3 = 0 c1 + c3 = 0

000 001= f1f2f3 = c1c2(c3+ 1) ⇒

f2 + f3 = c2 + c3+ 1 = 1 f1 + f3 = c1 + c3+ 1 = 1

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

(92)

Kody praktycznie stosowane

Kody BCH (R.C. Bose, D.K. Ray-Chaudhuri, A. Hocquenghema):

Rodzina kod´ow poprawiaja,cych b le,dy wielokrotne, uog´olnienie kod´ow Hamminga.

Kody BCH

Jeden z pierwszych praktycznie realizowanych wa˙znych kod´ow by l kodem BCH, mia l d lugo´s´c n = 127, w tym 35 symboli kontrolnych i sk lada l sie,z 292 s l´ow kodowych. Mia l odleg lo´s´c d = 11, czyli poprawia l do 5 b le,d´ow.

Powszechnie stosowanym w europejskich systemach przesy lania danych jest binarny kod BCH d lugo´sci n = 255, o 24 symbolach kontrolnych. Ten kod ma 2231 s l´ow kodowych a jego odleg lo´sc wynosi d = 7, tzn. poprawia b le,dy potr´ojne.

(93)

Kody praktycznie stosowane

Kody BCH (R.C. Bose, D.K. Ray-Chaudhuri, A. Hocquenghema):

Rodzina kod´ow poprawiaja,cych b le,dy wielokrotne, uog´olnienie kod´ow Hamminga.

Kody BCH

Jeden z pierwszych praktycznie realizowanych wa˙znych kod´ow by l kodem BCH, mia l d lugo´s´c n = 127, w tym 35 symboli kontrolnych i sk lada l sie,z 292 s l´ow kodowych. Mia l odleg lo´s´c d = 11, czyli poprawia l do 5 b le,d´ow.

Powszechnie stosowanym w europejskich systemach przesy lania danych jest binarny kod BCH d lugo´sci n = 255, o 24 symbolach kontrolnych. Ten kod ma 2231 s l´ow kodowych a jego odleg lo´sc wynosi d = 7, tzn. poprawia b le,dy potr´ojne.

Kody korekcyjne, czyli jak mo˙zna wykry´c i poprawi´c b la,d w przesy lanej informacji

Cytaty

Powiązane dokumenty

Na przykład, wśród osób po zawale serca leczo- nych w poradniach POZ badanie echokardiograficzne wy- konano u 43%, a wśród pacjentów bez zawału serca w wy- wiadzie u 20% (przy czym

Przemawia to za zasadnością rutynowej oceny objawów lęku i depresji w praktyce klinicznej, ponieważ podczas pierwszej wizyty u prawie wszystkich chorych stwierdza się objawy

Druga grupa wiąże się przede wszystkim z sytuacją materialną, jednak — jak poka- zują cykliczne badania w polskiej populacji — wpływ dochodów na przestrzeganie

Opracowanie i wdrożenie kompleksowego systemu pracy z uczniem zdolnym..

To także ostateczna realizacja Manovichowskiej kon- cepcji soft cinema - postindustrialnego modelu kina i filmu opartego na estetyzacji informacji, gdzie sam film staje się

To także ostateczna realizacja Manovichowskiej kon- cepcji soft cinema - postindustrialnego modelu kina i filmu opartego na estetyzacji informacji, gdzie sam film staje się

• V.Pless, Introduction to the Theory of Error-Correcting Codes, John Wiley & Sons, 1982..

Z komplikacji wywodu, a zarazem złożonej intencji Schellinga zdaje sprawę najlepiej cytat z klasycznej monografii Schellinga pióra XIX-wiecznego histo ­ ryka filozofii, Kuno