日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

纠错编码【海明码】

發布時間:2023/12/20 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 纠错编码【海明码】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

海明碼(Hamming Code)

基本概念

  • 對于連續比特的檢驗有檢錯和糾錯兩種形式

    檢錯編碼:

  • 奇偶校驗碼
  • CRC冗余碼
  • 但是對于檢錯編碼不能找到出錯的位置,因此這里介紹一種糾錯編碼:海明碼

  • 海明碼:

    • 能夠檢查出錯位和糾正出錯位
    • 其特點為,檢查偶數位,糾正奇數位
  • 海明不等式:

    2 ^ r - 1 >= k + r

    • r:冗余信息位
    • k:數據信息位

基本步驟

  • 根據傳輸的數據和海明不等式得到需要的冗余位個數:

    例如:

    ∵ data = 101101【6位即k = 6】

    ∴ 需要的最小冗余碼個數位2 ^ r - r >= 7 ==> r = 4

    ∴ 需要4位冗余位

  • 將數據碼填入正確的位置并留出冗余碼的位置

    冗余碼的位置均為2^i --> 1,2,4,8…

    因此冗余碼對應的數據位均只有1位1,其余位均為0,且1的位置逐次升高

    數據位置0001【1】0010【2】0011【3】0100【4】0101【5】0110【6】0111【7】1000【8】1001【9】1010【10】
    信息(k)/冗余?r1r2k1r3k2k3k4r4k5k6
    數值101101
  • 通過冗余碼的數據位置,填充數組

    一個冗余碼控制多個相應位置

    每個冗余碼控制信息位對應位置位1的數據位置【由于冗余碼的填充位置為2^i決定】:

    例:

    ? r1 = 0001最低位為1,因此所有數據位置最低位為1的位置均受其控制【0011(k1),0101(k2),0111(k4),1001(k5)】

    填充方法:

    r1 ⊕ k1 ⊕ k2 ⊕ k4 ⊕ k5 = 0 ==> r1 ⊕ 1 ⊕ 0 ⊕ 1 ⊕ 0 = 0 ==> r1 = 0

    數據位置0001【1】0010【2】0011【3】0100【4】0101【5】0110【6】0111【7】1000【8】1001【9】1010【10】
    信息(k)/冗余?r1r2k1r3k2k3k4r4k5k6
    數值0010011101
  • 對于接收方的校驗:

    • 對于所有檢驗位均再次對應異或運算:

      例:

      【表格種第五為發生了錯誤】

      重新查看校驗碼:

      r1 ⊕ k1 ⊕ k2 ⊕ k4 ⊕ k5 = 1(P1)

      r2 ⊕ k1 ⊕ k3 ⊕ k4 ⊕ k6 = 0(P2)

      r3 ⊕ k2 ⊕ k3 ⊕ k4 = 1(P3)

      r4 ⊕ k5 ⊕ k6 = 0(P4)

      P4P3P2P1 = 0101 = 5即第5位發生錯誤

      數據位置0001【1】0010【2】0011【3】0100【4】0101【5】0110【6】0111【7】1000【8】1001【9】1010【10】
      信息(k)/冗余?r1r2k1r3k2k3k4r4k5k6
      數值0010111101
  • 將錯誤位取反即糾錯結束

總結

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

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