Jak vypočítat Hammingův kód

Krok 1

Vytvořte datové slovo. Jakýkoli bit s pozicí, která je silou dvou (první, druhá, čtvrtá atd.), Musí být vyhrazen pro paritní informace. Použijte délku slova, které potřebujete přizpůsobit zdroji dat a paritním bitům.

Například:

1 1 0 1 0 0 1 0 se stává _ _ 1 _ 1 0 1 _ 0 0 1 0

Bity zůstávají ve stejném pořadí, ale byly rozšířeny tak, aby odpovídaly paritním bitům.

Krok 2

Nejprve vypočítejte paritní bit. Počínaje prvním bitem, přečtěte si bit, poté kousek přeskočte a opakujte operaci, přičemž se počítá počet nalezených. Paritní bity se počítají jako nuly.

Pokud je počet sudých, nastavte první bit jako nulu. Jinak to dejte jako jeden.

Například:

Bity 1, 3, 5, 7, 9 a 11 z __ 1 _ 1 0 1 _ 0 0 1 0, _11101, obsahují čtyři. To je sudé, takže první bit je nastaven na nulu: 0 _ 1 _ 1 0 1 _ 0 0 1 0.

Krok 3

Vypočítejte zbývající paritní bity. Bit dva přečte dva bity z bitů dva, pak přeskočí dva a opakuje. Bit čtyři přečte čtyři bity, pak přeskočí čtyři a začne bitem čtyři. Pokračujte tímto vzorcem, dokud nezbývají žádné paritní bity pro výpočet.

Například:

Bit 2: 0 _ 1 _ 1 0 1 _ 0 0 1 0 kontrola _1, 01, 01, která obsahuje 3, takže bit 2 je nastaven na 1. Bit 4: 0 1 1 _ 1 0 1 _ 0 0 1 0 kontrola _101, 0, která obsahuje 2, takže bit 4 je nastaven na 0. Bit 8: 0 1 1 0 1 0 1 _ 0 0 1 0 kontrola _0010, pouze s jedním, nastaví bit 8 jako 1.

Kódované slovo je proto 011010110010.

Krok 4

Potvrďte slovo. Pokud je slovo poškozené, paritní bity se neshodují s tím, co se očekává. Pro potvrzení, že slovo není poškozeno, stačí spočítat paritní bity s kroky dva a tři. Pokud se některý z bitů neshoduje, zaregistrujte své pozice.

Krok 5

Opravte špatný bit. Pokud najdete nesprávné paritní bity, jednoduše přidejte bitové pozice. Součet je pozice nesprávného bitu. Přesuňte bitovou hodnotu v této poloze.

Například, pokud jsou paritní bity jedna a čtyři nesprávné, otočením hodnoty pátého pátého bitu chybu opravte.

Zajímavé Články