Hamming-code

Een hammercode is een foutcorrigerende blokcode. De code is vernoemd naar Richard Hamming, die hem in de jaren vijftig van de vorige eeuw heeft ontwikkeld. In die tijd werkte Hamming met machines die relais hadden en die ponskaarten gebruikten om de gegevens te lezen. Omdat ze zwaar werden gebruikt, hadden de ponskaarten vaak fouten, die door de medewerkers moesten worden gecorrigeerd.

Hammeringscodes worden gebruikt voor digitale signaalverwerking en telecommunicatie. Hamming codes worden gegenereerd volgens bepaalde regels. Hamming codes gebruiken meerdere pariteitsbits. Een pariteitsbit vertelt of een groep bits even of oneven is. In een hammencode wordt elk bit data gedekt door meerdere pariteitsbits. Dit maakt het mogelijk om fouten te detecteren, en in bepaalde gevallen ook te corrigeren. Een ramcode maakt gebruik van redundantie. Als er drie pariteitsbits per codewoord zijn, moet het codewoord een lengte hebben van 7 ( 2 k - 1 {displaystyle 2^{k}-1}{\displaystyle 2^{k}-1} , voor k als het aantal pariteitsbits). Er blijven dus 4 bits aan gebruikersgegevens per codewoord over, in het voorbeeld. Meestal wordt dit geschreven als (N,n), waarbij het eerste getal de totale lengte van een codewoord is, en het tweede het aantal bits voor gebruikersdata. Het bovenstaande voorbeeld is (7,4).

De kortst mogelijke Hamming code is (3,1), 2 pariteitsbits worden gebruikt voor één databit. Deze code heeft twee geldige waarden 000 en 111 - De codes 001, 010 en 100 zijn transmissiefouten en worden toegewezen aan het geldige codewoord 000. De andere mogelijkheden 011,101 en 110 worden gewijzigd in '111'.


AlegsaOnline.com - 2020 / 2021 - License CC3