第六百八十六章 漢明碼(糾錯碼)(第2/2頁)
章節報錯
位,以此類推。最後根據所採用的是奇校驗,還是偶校驗即可得出第n位校驗碼的值。
4.校驗與糾錯
把以上這些校驗碼所校驗的位分成對應的組,則在接收端的對各校驗位再進行邏輯“異或運算”,如果採用的是偶校驗,正常情況下均為0。
如果最終發現只是一個校驗組中的校驗結果不符,則直接可以知道是對應校驗組中的校驗碼在傳輸過程中出現了差錯,因為所有校驗碼所在的位是隻由對應的校驗碼進行校驗;如果發現多組校驗結果不正確,則檢視這些組中公共校驗的資料位(只有資料位才可能被幾個校驗碼進行校驗),以最終確定是哪個資料位出了差錯(海明碼只能檢查一位出錯);最後,對所找到的出錯資料位取反即可實現糾錯。
如計算出的每組的校驗結果為p1、p2、p3、p4,均為0則正確,有一個不為0的則出錯的位置在p1+10?p2+100?p3+1000?p4的位置處。