codes de Hamming sont utilisés pour insérer des informations de correction d'erreurs dans les flux de données . Les codes sont conçus de sorte qu'une erreur ne peut pas être détecté , mais corrigées. Ajout d'informations de correction d'erreur augmente la quantité de données , mais augmente la fiabilité des communications sur les médiums avec codage de rates.Hamming élevés d'erreur peut être difficile à mettre en œuvre, mais elle peut être faite en utilisant très rapide astuces arithmétiques au niveau du bit . Cela en fait un système de correction d'erreur utile pour la haute vitesse et les applications embarquées. Instructions
1
Créer le mot de données . Tout bit avec une position qui est une puissance de deux ( première , deuxième, quatrième , etc ) doit être réservée aux informations de parité. Utilisez aussi longtemps d'un mot que vous avez besoin pour s'adapter à la source de données et les bits de parité
Exemple: .
1 1 0 1 0 0 1 0 devient __ 1 _ 1 0 1 0 _ 0 1 0
les bits restent dans le même ordre , mais ont été répartis pour répondre aux bits de parité.
2
calculer le premier bit de parité. En commençant par le premier bit , lire un peu , puis passez un peu de répétition, tout en comptant le nombre de celles rencontrées . Les bits de parité comptent comme des zéros.
Si le nombre de ceux qui est encore , le premier état à zéro. Sinon, réglez-le sur un
Exemple: .
Bits 1, 3, 5, 7, 9 et 11 de __ 1 _ 1 0 1 _ 0 0 1 0 , _11101 , contenir quatre petits. Cela est encore , de sorte que le premier bit est mis à zéro : 0 _ 1 _ 1 0 1 _ 0 0 1 0
3
Calculer les bits de parité restants . Bit deux lit deux bits à partir de peu deux, puis saute deux et recommencez. Bit lit quatre quatre bits puis saute quatre et commence avec quatre bits . Continuer avec ce modèle jusqu'à ce qu'il n'y a pas de bits de parité laissés pour calculer
Exemple: .
Bit 2: 0 _ 1 _ 1 0 1 _ 0 0 1 0 chèques _1 , 01, 01 , qui contient 3 petits, si le bit 2 est réglé sur one.Bit 4: 0 1 1 _ 1 0 1 _ 0 0 1 0 chèques _101 , 0, qui contient 2 petits, si bit 4 est mis à zero.Bit 8 : 0 1 1 0 1 0 1 _ 0 0 1 0 chèques _0010 , avec juste un un , le bit 8 à un.
le mot codé est donc 011010110010 .
4
Confirmation de l' mot . Si un mot est corrompu, les bits de parité ne correspondront pas à ce qui est attendu . Pour confirmer que le mot n'est pas corrompu , il suffit de calculer les bits de parité en utilisant les étapes deux et trois . Si les morceaux ne correspondent pas, enregistrer leurs positions.
5
corriger le mauvais bit . Si vous trouvez bits de parité incorrectes , il suffit de résumer les positions des bits. L'addition est la position du bit incorrect . Retournez la valeur du bit dans cette position.
Par exemple, si les bits de parité de un à quatre sont incorrects , renversant la valeur de la cinquième bit corriger l'erreur .