日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

海明校验

發布時間:2025/3/21 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 海明校验 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉自:https://www.cnblogs.com/zsswpb/p/5771636.html

做了調整與補充

?

【定義】

海明碼(Hamming Code)是利用奇偶性來檢錯和糾錯的校驗方法。海明碼的構成方法是在數據位之間的確定位置插入k個校驗位,通過擴大嗎距來實現檢錯和糾錯。 對于數據位m的數據,加入k位的校驗碼,它應滿足香農第二定理:n=m+k?≤ 2k-1 說明:這里的m是指我們待編有效信息的位數,例如110101就是m=6,然后代入m,6+k ≤2k-1得到m=6,k≥4(取最小值),這樣組成10位海明校驗碼。 【例子】 設數據為01101001,試采用校驗位求其偶校驗方式的海明碼。 根據上面的公式得到,m=8,k≥4 (1)確定數據位D和校驗位P在海明碼中的位置: 由海明碼編碼規則可知:?pi在海明碼的第2i-1,比如P4=2^(4-1)=8,所以位于第8位
海明碼H123456789101112
校驗位P1P2?P3???P4????
數據位??D0?D1D2D3?D4D5D6?D7

(2)確定校驗關系

這個難點在于如何確定校驗位組。 舉一個例子來說:H3=D0,海明碼下標為3,我們必須用已知的校驗位(P1,P2,P3,P4)來表示3,這里3就可以等于1+2。 比如P1 的校驗位為表格中紅色標記出來所對應的海明碼的位數 (3)故:P1校驗:P1,D0,D1,D3,D4,D6 P1=D0⊕D1⊕D3⊕D4⊕D6=0⊕1⊕0⊕1⊕0=0 P2=D0⊕D2⊕D3⊕D5⊕D6=0⊕1⊕0⊕0⊕0=1 P3=D1⊕D2⊕D3⊕D7=1⊕1⊕0⊕1=1 P4=D4⊕D5⊕D6⊕D7=1⊕0⊕0⊕1=0 ⊕符號:代表異或,相同則為0,不同則為1。只要仔細一定可以計算正確。 我們按照表格海明碼的位置插入P1~P4到數據中,所以海明校驗碼:010111001001 (4)設置指錯字G4,G3,G2,G1 G4=P4⊕D4⊕D5⊕D6⊕D7 G3=P3⊕D1⊕D2⊕D3⊕D7 G2=P2⊕D0⊕D2⊕D3⊕D5⊕D6 G1=P1⊕D1⊕D3⊕D4⊕D6 G1G2G3G4為0000,則數據傳輸沒有錯誤。 以上面的數據傳輸為例子: G4=0  G3=0  G2=0  G1=0 若數據傳輸之后變成010111001000 則 G4=P4⊕D4⊕D5⊕D6⊕D7=0⊕1⊕0⊕0⊕0=1 G3=P3⊕D1⊕D2⊕D3⊕D7=1⊕1⊕1⊕0⊕0=1 G2=P2⊕D0⊕D2⊕D3⊕D5⊕D6=1⊕0⊕1⊕0⊕0⊕0=0 G1=P1⊕D1⊕D3⊕D4⊕D6=0⊕0⊕1⊕0⊕1⊕0=0 G4G3G2G1組成的二進制數為:1100,也就是12,說明第12位出現的錯誤 (5)海明校驗缺點 1)海明校驗的每一步還是使用的奇偶校驗,因此當G中同時出現兩個錯誤時,G1G2G3G4依然為0000,例如D1,D2出錯,010100001001 G4=P4⊕D4⊕D5⊕D6⊕D7=0⊕1⊕0⊕0⊕0⊕1=0 G3=P3⊕D1⊕D2⊕D3⊕D7=1⊕00⊕0⊕1=0 G2=P2⊕D0⊕D2⊕D3⊕D5⊕D6=1⊕0⊕0⊕0⊕0⊕0=1 G1=P1⊕D1⊕D3⊕D4⊕D6=0⊕0⊕0⊕1⊕0=1

?

2)同時,G4G5G6G1=0000不一定數據傳輸過程中就沒有錯誤,只有當只有一位發生錯誤時,才能檢測出來。

G1G2G3G4=0011,也就是第3位出現錯誤,很明顯這是不準確的。

轉載于:https://www.cnblogs.com/Mayfly-nymph/p/11098213.html

總結

以上是生活随笔為你收集整理的海明校验的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。