海明码学习过程探究(我的学习探讨之路).docVIP

海明码学习过程探究(我的学习探讨之路).doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
海明码学习过程探究(我的学习探讨之路) 这是我学习过程中花好几个小时解决的问题,现在与大家分享一下 注意:鉴于本人水平有限,有些东西是个人的理解,可能不是那么很标准,请大侠们多多指教, 首先了解几个概念: 1.异或的运算方法是一个二进制运算: 1^1=0??0^0=0??1^0=1??0^1=1 两者相等为0,不等为1. 异或的作用:交换两个整数的值时可以不用第三个参数。 如a=11,b=9.以下是二进制 a=a^b=1011^1001=0010; b=b^a=1001^0010=1011; a=a^b=0010^1011=1001; 这样一来a=9,b=11了。 2.海明码是在原编码的基础上附加1部分代码,使其满足纠错码的条件,原编码可将它称为信息码,附加码称为校验码(又可称为监督码或冗余码)。编码效率最高。它属于线性分组码,由于线性码的编码和译码容易实现,至今仍是应用最广泛的1类码。 海明校验的特点不仅具有检测错误的能力,同时还具有给出错误所在准确位置的能力。 ? ?? ???好了现在我们开始看看怎么去求海明码和他是怎样去纠错的。 海明码编码可遵循以下四个步骤: 1。由信息位数,根据海明不等式,确定校验位数 2。确定校验码位置 3。确定校验码的值 4。求出汉明码 我们现在具体看一下: 1.海明不等式2的r次方减一大于等于k+r(根据信息位数,确定校验位数,2^r-1≥k+r,其中,k为信息位数,r为校验位数。求出满足不等式的最小r,即为校验位数。) 2.确定校验码位置 从理论上讲校验码位可放在任何位置,但习惯上将它放于位置1,2,4,8……等位置。感觉记住这几个位置就行, 备注:(对于校验位少的可用强记法记住所在位置,而对于位数较多的强记法就不适用,在这里介绍1种公式法,不用死记硬背,即可求出各校验码的位置。 校验位rn对应的位置为2n,n的取值从0开始,则: r0=20=1??r1=21=2??r2=22=4??r3=23=8 将校验位填在表格1对应的单元格内,其余位用信息码填充。表格1中,位数是指数据存放在第几位,共11位,用In表示(n的取值从1至11)。 11 10 9 8 7 6 5 4 3 2 1 位数 1 0 0 r3 1 1 0 r2 1 r1 r0 编码 ) 3.确定校验码的值(成功与否的关键) 用我自己的话写(带有局限性):海明码的位号拆分成校验码位号的2的N-1次幂的和 如图2.6 备注说明 然后校验码的值就等于所校验的所有位值的异或值。over 下面是从网上找的详细解答。 在海明码中, 位号数(1、2、3、……、n)为2的权值的那些位,即: 1(20)、2(21)、4(22)、8(23)、…2r-1位,作为奇偶校验位 并记作: P1、P2、P3 、P4、…Pr,余下各位则为有效信息位。 例如: N=11 K=7 r=4 相应海明码可示意为 位号? ?1??2? ?3? ?4? ?5? ?6? ?7? ?8? ?9? ?10? ?11 P占位 P1 P2 × P3 × × × P4? ?×? ?×? ?× 其中×均为有效信息,海明码中的每一位分别被P1P2P3P4… Pr 中的一至若干位所校验,其规律是: 第i位由校验位位号之和等于i的那些校验位所校验 如:海明码的位号为3,它被P1P2(位号分别为1,2)所校验 海明码的位号为5,它被P1P3(位号分别为1,4)所校验 归并起来: 形成了4个小组,每个小组一个校验位,校验位的取值,仍采用奇偶校验方式确定。 如表 2·6 、表2·7所示: (自我认知:感觉就是码位的拆分,拆分成校验码的2的N—1次方幂的和) 其次,校验位rn由信息码对应位数的幂之和形式中包含有n的信息码异或而得,从表格2.6??2.7分析可知, p1的值由I11(信息码为1)、I9(信息码为0)、I7位(信息码为1)、I5位(信息码为0)、I3(信息码为1)对应的信息码异或而得, 4.求海明码。根据上面的校验码公式表表格填好后,写出海明码。 5.校验 若有17位长的信息码为1001101,由7位信息码,求出了汉明码为10011100101,若该编码传输被接收时,第7位变成了0,接收端如何来判断并且纠正错误呢? 在海明码中,通过校验因子进行验证,校验因子公式为Sn=rn(校验码) ○+ Rn(接收码) rn(校验码)即为所对应的r的取值,Rn(接收码)为由信息码对应位数的幂之和形式中包含有n的信息码异或而得。 如表格4所示,出错的第7位数据用蓝色显示,黄色表示校验位,黑色表示信息位。 S0=r0(校验码) ○+ R0(接收码)=1○+1○+0○+0○+0○+1=1 S1=r1(校验码) ○+ R1(接收码)=0○+1○+1○+0○+0○+1=1 S2=r2(校验码) ○+ R2

文档评论(0)

lyxbb + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档