海明码解题模板
海明码模板
海明码是一种多重奇偶校验码,原理是在有效信息位中加入几个校验位形成海明码,并把海明码的每个二进制位分配到几个奇偶校验组中。当某一位出错后,就会引起有关的几个校验位的值发生变化,这不但可以发现错位,还能指出错位的位置,为自动纠错提供依据。
根据纠错理论得 L-1=D+C且D≥C
即编码最小码距L越大,其检测错误的位数D越大,纠正错误的位数C也越大,且纠错能力恒小于检错能力。
例:在n=4,k=3时,求1010的海明码
解:
(1)确定海明码的位数
设n为有效信息的位数,k为校验位的位数,即信息位n和校验位k应满足
n+k ≤ (2的k次方)-1 [若要检错两位错,则需再增加1位校验位,即k+1位]
海明码位数为n+k=7≤2^3-1成立,则n,k有效。设信息位为D4D3D2D1(1010),共4位,校验位为P3P2P1,共3位,对应的海明码为H7 H6 H5 H4 H3 H2 H1 .
(2)确定检验位的分布
规定校验位Pi在海明位号为2^(i-1)的位置上,其余各位为信息位,因此有:
P1的海明位号为2^(i-1)=2^0=1,即H1为P1
P2的海明位号为2^(i-1)=2^1=2,即H2为P2
P1的海明位号为2^(i-1)=2^2=4,即H4为P3
将信息位按原来的顺序插入,则
文章来源: andyguo.blog.csdn.net,作者:山顶夕景,版权归原作者所有,如需转载,请联系作者。
原文链接:andyguo.blog.csdn.net/article/details/108682828
- 点赞
- 收藏
- 关注作者
评论(0)