Egyszerű Hamming-kód

Szóval Feladat. Használja Hamming-kód bináris üzenetet, a szó, amelyek hossza 16 bit. Vegyük az eredeti üzenet „0100010000111101”. Azaz, a szó 16 „betűk”, amelyek mindegyike értéke lehet akár „0” vagy „1”.

kódolás

Először is, az eredeti üzenetet adjunk ellenőrző bitek és nullára állítani azokat.
Vezérlő bitek található ezeket a számokat a bitek, amelyek hatásköre kettő (bináris ábécé).
Ie. Két, hogy nulla fokos - egy egységet, két a teljesítmény 1 = két, két a kettő hatványa = négy és két, hogy a hálózati nyolc 3 =, két a teljesítmény-4 = 16
Ezért ellenőrizni bit lesz "betűk" (bit), számozott 1, 2, 4, 8 és 16.

A többi szoba egy kicsit átírja az eredeti üzenetet.

Nyilvánvaló, hogy a „szó” hossza redundancia nőtt öt „betűk”. Ebben az esetben, természetesen. Megvan a számú bit függ a hossza az eredeti „szót.”

Most kell számítani ezen biteket.
Valamennyi kontroll indexű bit az N «kontroll» folyamatos szekvenciájára n bit minden N bit.

Itt a kép jegyezni iksami (X), amely bitek használni kiszámításához az első ellenőrzés bit ( „1” szám)

Kiszámításához kicsit, csak meg kell összeadjuk a „betűk” mi „szavak”, hogy ellenőrzi, majd egy nehéz döntés: ha az összeg már kiderült még, akkor írunk eredményeként nulla, és ha a szokatlan - egy.

Kiszámítjuk az első bit.
Fold bitek számozása 3,5,7,9,11,13,15,17,19,21
Ez lesz 0 + 1 + 0 + 0 + 0 + 0 + 1 + 1 + 1 + 1 = 1 + 1 + 1 + 1 + 1 = 5
Get 5 (öt). Az összeg páratlan (nem osztható két részvény). Ezért az első írási bit egység:

Most kiszámítani a paritás bit 2-es szám Mert meg kell találni az összege minden két bitet az egymást követő folyamatos, minden két bit. Ezek a bitek azt is rámutatott, a képen.

Vagyis, mi lesz most összefoglaljuk a bitek nachitaya a harmadik szám, majd azokat megjegyezte Iksom (X).
Számuk 3, 6, 7, 10, 11, 14, 15, 18, 19.
Ez lesz 0 + 0 + 0 + 1 + 0 + 0 + 1 + 1 + 1 = 4
Négy - a szám páros, akkor hagyja a második bit nulla.

Azt viszont, hogy a számítás a harmadik visszacsapó kicsit. De mi irányítjuk, hogy - a harmadik. Egy kicsit az üzenetet, hogy van rögzítve szám alatt 4 - négy.

Ezért mi minden esik a mi szabály biteket az ötödik.
Ez a bit számozott 5, 6, 7, 12, 13, 14, 15, 20, 21.
Hozzáadása őket: 1 + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 1 = 3
Ennek eredményeként, van egy páratlan szám, akkor írj a mi vezérlő bit egységet.

Ez maradt semmi - kiszámítani a fennmaradó két biteket. számozva vannak 8 és 16.

A nyolcadik tartalék nulla, mert a sorozatban, hogy használjuk kiszámításához a jelenlegi két egység, ami összesen páros számú.

A 16-m is az összeg bites kapunk egy még - tartalék nulla:

Ennek eredménye, hogy üzenetet kapott a Hamming-kód, amely a redundáns biteket (összesen 21): „100110000100001011101”.

dekódolás

Most képzeljük el, hogy kaptunk egy hibaüzenetet. Itt van „100110001100001011101”.
Tudjuk, hogy hozzáadott redundáns biteket a Hamming algoritmus, és meg kell, hogy ellenőrizze, ha van egy hiba, vagy sem.

Ehhez a következőképpen járjon el. Először újratervezi a biteket az előző algoritmust.
Ehhez először nullázza a bitek, amelyek hatásköre két szoba:

Az első tartalék nulla, mivel az még több bit vezérelt egységek.

Kiszámítjuk az összes többi vezérlő biteket a fent leírt algoritmus (Túl lusta vagyok, hogy újra leírni itt), és azt látjuk, hogy nem felelnek meg a bitek számozása 1 és 8:

Most összeadjuk a számokat ezen ellenőrző bitek: 8 + 1, és megkapjuk 9 - bites szám, amelyben a hiba csúszott! Hurrá! Most csak megváltoztatni a kilencedik bit az ellenkező - egy nulla - és kap az eredeti üzenetet!

Kapcsolódó cikkek