Kako izračunati Hammingovo kodo

Avtor: Rachel Coleman
Datum Ustvarjanja: 23 Januar 2021
Datum Posodobitve: 22 November 2024
Anonim
Kako izračunati Hammingovo kodo - Elektronika
Kako izračunati Hammingovo kodo - Elektronika

Vsebina

Hammingove kode se uporabljajo za vstavljanje informacij o popravkih napak v podatkovne tokove. Kode so zasnovane tako, da napake ne le zaznajo, temveč tudi popravijo. Dodajanje informacij o popravljanju napak poveča količino podatkov, hkrati pa poveča zanesljivost komunikacije prek medijev z visoko stopnjo napak.

Hammingovo kodiranje je lahko zapleteno za izvedbo, vendar ga je mogoče zelo hitro izvesti z uporabo aritmetičnih trikov na ravni bitov. To omogoča ustvarjanje uporabnega in hitrostnega sistema za odpravljanje napak, ki se bo uporabljal v vdelanih aplikacijah.

Korak 1

Ustvarite podatkovno besedo. Vsak bit s položajem, ki je moč dveh (prvi, drugi, četrti itd.), Mora biti rezerviran za informacije o pariteti. Uporabite toliko časa, da ima beseda izvirne podatke in bite paritete.


Primer:

1 1 0 1 0 0 1 0 postane _ _ 1 _ 1 0 1 _ 0 0 1 0

Prvotni biti ostanejo v enakem vrstnem redu, vendar so bili razporejeni, da so vstavili paritetne bite.

2. korak

Izračunajte prvi bit parnosti. Začenši s prvim bitom, se bit prebere, nato se bit preskoči in postopek se ponovi do konca. Medtem se prešteje število najdenih. Pri tem se paritetni bit ne štejejo.

Če je število enakih, nastavite prvi bit na nič. V nasprotnem primeru nastavite na eno.

Primer:

Biti 1, 3, 5, 7, 9 in 11 od _ _ 1 _ 1 0 1 _ 0 0 1 0, _11101, vsebujejo štiri. To je sodo, zato je prvi bit nastavljen na nič: 0 _ 1 _ 1 0 1 _ 0 0 1 0

3. korak

Izračunajte preostale paritetne bite. Začenši z drugim bitom, se prebereta dva bita, nato se dva bita preskočita in postopek ponovimo do konca. Četrti bit bere štiri bite, preskoči še štiri, začenši z bitom štiri. Isti vzorec sledijo vsem bitom paritete, dokler niso vsi izračunani.


Primer:

Bit 2: 0 _ 1 _ 1 0 1 _ 0 0 1 0 preverja _1, 01, 01, ki vsebujejo tri enote, zato je bit 2 nastavljen na enega. Bit 4: _ 0 1 1 1 0 1 _ 0 0 1 0 preveri _101, 0, ki vsebuje dva, zato je bit 4 nastavljen na nič. Bit 8: 0 1 1 0 1 0 1 _ 0 0 1 0 preveri _0010, ki vsebuje samo enega, zato je bit 8 nastavljen na enega.

Beseda je torej kodirana kot 011010110010.

4. korak

Potrdite besedo. Če je beseda poškodovana, se paritetni bit ne ujema s pričakovanim. Če želite potrditi, da beseda ni poškodovana, samo izračunajte paritetne bitove z uporabo drugega in tretjega koraka. Če biti niso enaki, zapišite njihov položaj.

5. korak

Popravite napačen bit. Če najdete napačne paritetne bite, preprosto dodajte položaje bitov. Vrednost vsote je položaj napačnega bita. Spremenite bitno vrednost v tem položaju.

Če sta na primer nepravilna paritetna bita ena in štiri, bo sprememba vrednosti petega bita odpravila napako.