Hva er en hammkode?
En hammingkode er en metode for å oppdage og korrigere feil i en binær overføring. Det gjør det gjennom inkludering av ytterligere binære sifre i sekvensen som brukes til kontroll, samt en algoritme som gir deteksjonslogikken. En slik kode er i stand til å finne to feil i en hvilken som helst sekvens av biter og reparere en bit som kan være feil. Den mest refererte til Hamming -koden er kjent som Hamming (7,4), der de fire indikerer det opprinnelige antallet startbiter og de syv representerer det totale antallet bits i sekvensen etter at de ekstra sjekkbitene har blitt inkludert.
Teknikken fikk navnet sitt fra sin skaper, Richard Hamming, som publiserte den porken til å ta en kode, og Insert B -teknikken. referert til som paritetsbiter, inn i sekvensen. Kontrollbitene blir alltid injisert i en posisjon som er en kraft av to, slik at et hvilket som helst antall biter kan bekreftes av inkl.Ding ekstra paritetsbiter. Dette kan fortsette til den siste paritetsbiten lagt til i sekvensen er i en posisjon som er en kraft av to som er mindre enn eller lik den endelige posisjonen i sekvensen.
Med alle paritetsbiter på plass er de gjenværende posisjonene de faktiske databitene. Gitt fire-biters eksemplet, ville bitposisjoner en, to og fire være paritetsbitene, mens posisjonene tre, fem, seks og syv er dataene. Når denne sekvensen er etablert, går logikken til Hamming -koden på jobb.
I en Hamming -kode brukes hver av paritetsbitene som er lagt til sekvensen for å sjekke noen av bitposisjonene de er i nærheten av, inkludert seg selv. Paritetsbiten i posisjon en sjekker annenhver bit-posisjon, som egentlig er alle oddetallede posisjoner i sekvensen. Den andre paritetsbiten, i posisjon to, sjekker plasseringer to og treE, hopper over to posisjoner, sjekker to posisjoner til, hopper over to til og så videre. Hvis det er en paritetsbit i posisjon fire, fungerer den på samme måte ved at den sjekker posisjoner fire til syv, så hopper over fire posisjoner, sjekker fire til og videre. Hver paritetsbit i sekvensen fortsetter på denne måten gjennom hele sekvensen.
Prosessen som en hammingkode oppdager og korrigerer en feil er ved å legge opp bitene i sjekksekvensen for hver paritetskontroll, som hver må komme ut et jevnt tall. Gitt det syv-biters eksemplet, for den første paritetskontrollen, blir bitene en, tre, fem og syv lagt opp. Hvis totalen er et jevnt tall, sjekker pariteten ut, men hvis totalen er merkelig, er det en feil. Siden paritetskontroller overlapper hverandre, vil to slike feil vises. Når to-Parity-bit-posisjonene som ikke klarer å komme med til og med totaler, blir lagt sammen, vil den avsløre den biten som må korrigeres.
i det syv-biters hammkodeeksemplet, ulemperIder at biten i posisjon nummer fem er feil. Summen av bitene i posisjonene en, tre, fem og syv vil komme ut som et oddetall, og det samme vil summen av bitene i stilling fire til syv. Dette indikerer at paritetskontroller for sjekkbitene i posisjonene en og fire mislyktes. Når en og fire blir lagt sammen, er totalen fem, som er posisjonen for feil bit i overføringen som må korrigeres.