logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Korekcja blędów - kod Hamminga

daniio2 06 Maj 2011 03:10 3883 1
REKLAMA
  • #1 9475717
    daniio2
    Poziom 9  
    Witam
    Mam takie pytanie, otóż mam napisać program(w c++) wykrywający oraz korygujący 1 lub 2 błędy transmisji(8bitów - znaku). Powinienem wykorzystać kod Hamminga(inny nie wchodzi w grę).
    Nigdy wcześniej nie robiłem czegoś takiego a przeglądając internet jest mi bardzo ciężko pojąć kilka rzeczy:

    1.)Na niektórych stronach jest napisane, że kod Hamminga umożliwia tylko korkcję pojedynczego błędu np tutaj:
    http://pl.wikipedia.org/wiki/Kod_Hamminga
    na innych stronach znowu jest napisane odwrotnie, że się da np tutaj:
    http://sarmax.info/Mollo/tmp/Kod%20Hamminga%202.pdf
    Moje pytanie brzmi jaka jest prawda i czemu te informacje są tak dziwnie rozbierzne?

    2.)Sprawa druga. Na podstawie powyższej stronki napisałem program korygujący 1 błąd jak narazie. Czy macierz H jest macierzą kompletnie dowolną poza tymi dwoma warunkami jakie musi spełniać? Testując w moim programie odpowiedź brzmi tak. Wychodzi również, że wbrew temu co jest napisane tutaj:
    http://en.wikipedia.org/wiki/Parity-check_matrix
    druga część macierzy H wcale nie musi być macierzą jednostkową. Jak zmieniam ją zmieniam w moim programie dając np zera znak jest i tak poprawnie korygowany.

    3.)Jakiej macierzy H potrzebuję aby móc korygować podwójny błąd transmisji?

    Bardzo dziękuję za wszelką pomoc. Proszę o wyrozumiałość bo temat do tej pory był mi zupełnie obcy. Bardziej liczę na jakieś wyjaśnienia niż linki do stron ponieważ już chyba wszystko przejrzałem na ten temat co byłem w stanie przyswoić.
  • REKLAMA
REKLAMA