278 字
1 分钟
差错控制
2024-07-24

检错编码#

奇偶校验码#

只能检查出奇数个的错误

CRC编码#

能用于纠错但只是用来检错 ADFF858C508B605970A9487FF6FF09E6 82CAC1195FCCA3E771EC67B60007958E

纠错编码#

确认海明编码位数#

若数据有m位,校验码有r位,则校验码的位数应满足:

2rm+r+12^r \ge m + r + 1

确定校验码和数据的位置#

将校验码依次放在2r2^r位上,剩下的数据依次填入,位子从1开始

求出校验码的值#

每位校验位依照自身序号中为1的位置确定所要检验的数据位 依据各校验码所对应的校验数据位,分别做偶校验,得到校验位的值

检错与纠错#

对各校验位进行奇偶校验,若为奇数,则证明数据出错。 将每位校验码所校验的位数再次求奇偶校验,得到新的结果转置所得的二进制值即为出错位数

码距与检错、纠错能力的关系#

  • 纠正n位错码距至少为2n+12*n+1
  • 发现n位错码距至少为n+1n+1