Jak vypočítat kód Hammingu
Krok 1
Vytvořte datové slovo. Každý bit s pozicí, která je síla dvou (první, druhý, čtvrtý atd.) Musí být vyhrazena pro paritní informace. Použijte délku slova, které potřebujete přizpůsobit zdrojům dat a bitům parity.
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 vyhovovaly paritním bitům.
Krok 2
Nejprve vypočtete bit parity. Počínaje prvním bitem, přečtěte si trochu, potom trochu přeskočte a operaci zopakujte a počítat počet nalezených. Paritní bity se počítají jako nuly.
Pokud je počet jednotek rovnoměrný, zadejte první bit jako nulu. V opačném případě ji 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 vyrovnané, takže první bit je nastaven na nulu: 0 _ 1 _ 1 0 1 _ 0 0 1 0.
Krok 3
Vypočtěte zbývající paritní bity. Bit č. 2 čte dva bity z druhého kousek, pak skočí dva a opakuje. Bit čtyři čte čtyři bity, pak skoky čtyři a začíná bit čtyř. Pokračujte v tomto vzoru, dokud nejsou k výpočtu žádné parity.
Například:
Bit 2: 0 _ 1 _ 1 0 1 _ 0 0 1 0 revize _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 revize _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 revize _0010, s pouze jedním, nastavený bit 8 jako 1
Kódované slovo je tedy 011010110010.
Krok 4
Potvrďte slovo. Pokud je slovo poškozeno, paritní bity neodpovídají očekávanému. Chcete-li potvrdit, že slovo není poškozeno, stačí vypočítat paritní bity se dvěma a třemi kroky. Pokud se některý z bitů neshoduje, zaregistrujte své pozice.
Krok 5
Opravte špatný bit. Pokud zjistíte nesprávné paritní bity, stačí přidat pozice bitů. Součtem je pozice nesprávného bitu. Přesuňte hodnotu bitů v této pozici.
Například pokud parity bitů jedna a čtyři jsou nesprávné, přepnout hodnotu pátého pátého bitu opravit chybu.