Skip to main content

Wat is een hammingcode?

Een Hamming -code is een methode voor het detecteren en corrigeren van fouten in een binaire transmissie.Het doet dit door het opnemen van extra binaire cijfers in de volgorde die worden gebruikt voor het controleren, evenals een algoritme dat de detectielogica biedt.Een dergelijke code kan twee fouten vinden in elke reeks bits en het repareren van een bit dat mogelijk onjuist is.De meest genoemde hammingcode staat bekend als de hamming (7,4), waarbij de vier het oorspronkelijke aantal startbits aangeeft en de zeven het totale aantal bits in de volgorde vertegenwoordigen nadat de extra controlebits zijn opgenomen.

De techniek kreeg zijn naam aan zijn maker, Richard Hamming, die de methode in 1950 publiceerde. De manier waarop de Hamming -code werkt, is door een reeks bits te nemen en extra controlebits in te voegen, aangeduid als pariteitsbits, in de reeks.De controlebits worden altijd geïnjecteerd op een positie die een kracht van twee is, zodat een willekeurig aantal bits kan worden geverifieerd door extra pariteitsbits op te nemen.Dit kan doorgaan totdat de laatste pariteitsbit die aan de reeks is toegevoegd, in een positie is die een kracht is van twee die kleiner is dan of gelijk is aan de eindpositie in de volgorde.

met alle pariteitsbits op hun plaats, de resterende positieszijn de werkelijke gegevensbits.Gezien het vier-bits voorbeeld, zouden bitposities één, twee en vier de pariteitsbits zijn, terwijl posities drie, vijf, zes en zeven de gegevens zijn.Zodra deze reeks is vastgesteld, gaat de logica van de hammingcode aan het werk.

In een hammingcode wordt elk van de pariteitsbits die aan de volgorde zijn toegevoegd, gebruikt om enkele van de bitposities te controleren waar ze dicht bij zijn,inclusief zichzelf.De pariteitsbit in positie één controleert elke andere bitpositie, die in wezen elke oneven genummerde positie in de reeks is.Het tweede pariteitsbit, in positie twee, controleert posities twee en drie, slaat vervolgens twee posities over, controleert nog twee posities, slaat er nog twee, enzovoort slaat.Als er een pariteitsbit is in positie vier, werkt het op dezelfde manier in die zin dat het posities vier tot zeven controleert, dan vier posities overslaat, vier meer controleert en verder.Elk pariteitsbit in de reeks gaat op deze manier door gedurende de hele reeks.

Het proces waarmee een hammingcode een fout detecteert en corrigeert, is door de bits in de controle -reeks voor elke pariteitscontrole op te tellen, waarvan elk naar buiten moet komeneen even getal.Gezien het zeven-bits voorbeeld, voor de eerste pariteitscontrole zijn bits één, drie, vijf en zeven opgeteld.Als het totaal een even getal is, checkt de pariteit uit, maar als het totaal vreemd is, is er een fout.Omdat de pariteitscontroles overlappen, zullen twee van dergelijke fouten verschijnen.Wanneer de bitposities met twee pariteit die niet met zelfs totalen komen, worden bij elkaar gekomen, zal dit het bit onthullen dat moet worden gecorrigeerd. Bedenk in het voorbeeld van de zeven-bits hamming-code dat het bit in positie nummer vijf onjuist is.De som van de bits in posities één, drie, vijf en zeven zal uitkomen als een oneven getal, net als de som van de bits in posities vier tot zeven.Dit geeft aan dat pariteitscontroles op de controlebits in posities één en vier zijn mislukt.Wanneer één en vier bij elkaar zijn toegevoegd, is het totaal vijf, wat de positie is voor het onjuiste bit in de transmissie die moet worden gecorrigeerd.