輕輕鬆鬆學會漢明碼,nice!!!


① 爲什麼要使用漢明碼

在這裏插入圖片描述

② 什麼是漢明碼

說白話就是你要驗證的代碼(n位)和你的校驗位(k位)組成的n+k位漢明碼


③ 代碼長度與校驗位位數

假設你要驗證的二進制代碼爲 n 位,那麼漢明碼的校驗位應該爲 k 位,則應滿足下面這個式子:
在這裏插入圖片描述
如果嫌麻煩不想計算,哈哈,可以記住下面這個圖片

在這裏插入圖片描述

④ 校驗位放哪

漢明碼是一種數據傳輸中校驗和糾錯的手段。當傳輸一個二進制碼時,它在每一個2的整數次冪位插入校驗位,P代表校驗碼,D就是數據
在這裏插入圖片描述
那知道了校驗位放的位置,那咋知道怎麼去校驗,看下面↓↓↓↓


⑤ 校驗位怎麼校驗

漢明碼校驗方式採用分組奇偶校驗:

■ 咋分組

就是每個校驗位負責一些數據:

凡是位置符合這種形式的,XXX1,歸到P1;

凡是位置符合這種形式的,XX1X,歸到P2;

凡是位置符合這種形式的,X1XX,歸到P3;

凡是位置符合這種形式的,1XXX,歸到P4
              ……


如:

第一組:如P1負責的數據位置是1,3,5,7,9,11……(轉換成二進制位置符合XXX1)

第二組:如P2負責的數據位置是2,3,6,7,10,11,14……(轉換成二進制位置符合XX1X)

第三組:如P3負責的數據位置是4,5,6,7,12,13……(轉換成二進制位置符合X1XX)

第四組:如P4負責的數據位置是8,9,10,11,12,13……(轉換成二進制位置符合1XXX)
              ……

■ 咋奇偶校驗

偶校驗就是保證校驗碼 (P)負責的數(D)中的1是偶數個

奇校驗就是保證校驗碼 (P)負責的數(D)中的1是奇數個

在這裏插入圖片描述

我們用個小圖直觀的感受一下:(下面這個圖算題的時候超級好用)
在這裏插入圖片描述


⑤ 校驗例題

1.根據配偶原則,1100的漢明碼爲________

解析:(下面這個圖要會用啊,做題賊拉方便)
在這裏插入圖片描述
根據第③步可知,這個代碼有4位,則需要3位檢測碼,做題時可以畫這樣一個圖,把2的整數冪的位數找出來作爲檢測位,剩下的位置從左到右將原二進制代碼填進去
          然後可知:
P1負責1,3,5,7位,又因爲要根據配偶原則,則需要這四位裏面的1位偶數個,由上圖知道,3爲1,5爲1,7爲0,1已經爲偶數個了,則P1應該爲0,才滿足配偶原則,即
同理可知P2負責2,3,6,7位,3爲1,6爲0,7爲0,則P2應爲1
同理可知P3負責4,5,6,7位,5爲1,6爲0,7爲0,則P3應爲1
在這裏插入圖片描述
所以漢明碼就是把上面連起來 0111100

可以自己練習一下哈:(ps:注意配奇原則就是是1的個數爲奇數個)

根據配偶原則,1010的漢明碼爲___答案在最後_____.


⑥漢明碼糾錯過程(就是知道漢明碼,咋求原碼)

在這裏插入圖片描述
其實不會的時候多看例題最好理解,來個例題看一下子啊

例題1:已知接收到的漢明碼爲1101001(根據配偶原則),則欲傳送的信息爲______.
在這裏插入圖片描述
⊕:異或:相同爲0,相異爲1(也可以這樣記,偶數個1爲0,奇數個1爲1)
第一小組:1,3,5,7位:對應1,0,0,1即 1⊕ 0⊕ 0⊕ 1=0
第二小組:2,3,6,7位:對應1,0,0,1即 1⊕ 0⊕ 0⊕ 1=0
第三小組:4,5,6,7位:對應1,0,0,1即 1⊕ 0⊕ 0⊕ 1=0

如果異或結果全爲0,那麼就是沒有錯誤的,原碼在3,5,6,7位上,所以原碼爲0001

例題2:已知接收到的漢明碼爲0100111(根據配偶原則),則欲傳送的信息爲______.
在這裏插入圖片描述
第一小組A1:1,3,5,7位:對應0,0,1,1即 0⊕ 0⊕ 1⊕ 1=0
第二小組A2:2,3,6,7位:對應1,0,1,1即 1⊕ 0⊕ 1⊕ 1=1
第三小組A3:4,5,6,7位:對應0,1,1,1即 0⊕ 1⊕ 1⊕ 1=1
高到低排下來爲A3A2A1 =110= 6(十進制),所以第6位出錯了,第6位是1,是錯的,計算機會自動的將1改爲0, 則原碼應爲0101

PS:根據配偶原則,1010的漢明碼爲:1011010

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章