Miten laskea Hamming koodi

Hamming -koodit ovat helposti toteutettavissa ja usein käytetään virheiden korjaaminen . painimen 3 kuvaa PeteG päässä Fotolia.com

Hamming-koodit ovat käytössä lisätä virheenkorjauksen informaation datavirroiksi.Koodit on suunniteltu siten, että virhe ei voida ainoastaan ​​havaita, mutta korjattu.Lisääminen virheenkorjaustietoa lisää tietomäärä, mutta lisää luotettavuutta viestinnän medioissa kanssa paljon virheitä.


Hamming koodaus voi olla hankala toteuttaa, mutta voidaan tehdä hyvin nopeasti käyttäen bittitason aritmeettinen temppuja.Tämä tekee siitä hyödyllistä virheenkorjausjärjestelmä nopeaan ja sulautettuihin sovelluksiin.

Ohjeet

  1. Luo datasanan.Mitään bittiä ja asema, joka on kahden potenssi (ensimmäinen, toinen, neljäs jne) olisi varattava pariteettitietoa.Käytä niin kauan sanan niin sinun täytyy sovittaa lähdetietojen ja pariteettibittiä.

    Esimerkki:

    1 1 0 1 0 0 1 0 tulee 1 1 0 1 0 0 1 0

    bitit pysyvät samassa järjestyksessä, mutta on levittää sopivaksi pariteettibitit.

  2. Lasketaan ensimmäinen pariteettibitti.Alkaen ensimmäisestä bitin,

    lukea yksi bitti, siirry yksi bitti ja toista, mutta laskemalla joita ilmeni.Pariteettibitit lasketaan nollia.

    Jos ykkösten lukumäärä on parillinen, asettaa ensimmäinen bitti on nolla.Muuten aseta se yksi.

    Esimerkki:

    Bitit 1, 3, 5, 7, 9 ja 11 1 1 0 1 0 0 1 0, 11101, sisältää neljä niistä.Tämä on vielä, niin ensimmäinen bitti asetetaan nollaksi: 0 1 1 0 1 0 0 1 0

  3. Laske jäljellä pariteettibittiä.Bittinen kaksi lukee kaksi bittiä alkaen hieman kaksi, sitten ohittaa kaksi ja toistoa.Bittinen neljä lukee neljä bittiä sitten ohittaa neljä ja alkaa vähän neljä.Jatka tätä mallia kunnes ei ole pariteettibitit jäljellä laskea.

    Esimerkki:

    Bitti 2: 0 1 1 0 1 _ 0 0 1 0 tarkastukset 1, 01, 01, joka sisältää 3, eli niin bitti 2 asetetaan ykköseksi.
    Bitti 4: 0 1 1
    1 0 1 _ 0 0 1 0 tarkastuksia 101, 0, joka sisältää 2 niistä, joten bitti 4 asetetaan nollaan.
    Bitti 8: 0 1 1 0 1 0 1
    0 0 1 0 tarkastuksia _0010, yhdellä yksi, jossa bitti 8 yhteen.

    koodattu sana on siis 011010110010.

  4. Vahvista sana.Jos sana on vioittunut, pariteettibittejä ei vastannut sitä, mitä odotetaan.Voit varmistaa, että sana ei ole korruptoitunut, yksinkertaisesti laskea pariteettibitit käyttämällä vaiheet kaksi ja kolme.Jos jokin bitit eivät täsmää, tallentaa asemiaan.

  5. Korjaa huono vähän.Jos löydät virheellisiä pariteettibittejä, yksinkertaisesti summa bittien.Summa on asema virheellisen bitin.Flip bitin arvo tässä asennossa.

    Esimerkiksi, jos pariteettibitit yhdestä neljään ovat virheellisiä, käännetään arvo viidennen bitin korjaa virheen.

Vinkkejä & amp;Varoituksia

  • lisääminen ylimääräisen pariteettibitin, joka laskee monta nollaa koko sana on mahdollista havaita kahden bitin virheet.Normaali Hamming-koodit tarjoavat väärän tuloksen, kun kyseessä on kahden bitin virheen.
67
0
3
Ohjelmointikieltä