- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
校验码最终版
检错纠错码 数据在计算机系统内形成、存取和传送的过程中难免会产生错误。为减少和避免这类错误,一方面是精心设计各种电路,提高计算机硬件的可靠性,另一方面是在数据编码上找出路,即采用一点冗余的线路,在原有数据位之外再增加一到几位校验位,使新得到的码字带上某种特性,之后则通过检查该码字是否仍保持有这一特性,来发现是否出现了错误,甚至于定位错误后,自动改正这一错误,这就是我们这里说的检错纠错编码技术。 数据校验码的实现原理:是在合法的数据编码之间,加入一些不允许出现的(非法的)编码,使合法数据编码出现某些错误时,就成为非法编码。 码距:是指任意两个合法码之间至少有几个二进制位不相同。仅有一位不同,称其码距为1,例如用四位二进制表示16种状态,16种编码都用到了,此时码距为1,就是说,任何一个状态的四位码中的一位或几位出错,就变成了另一合法码,此时无查错能力。若用其中的8个状态编码,此时码距为2。 一般来说,合理地增大合法码的码距,就能提高发现错误的能力,但表示一定数量的合法码所使用的二进制位数变多,增加了数据存储的容量或数据传输的数量。 几种常用的检错纠错码 我们只介绍三种常用的检错纠错码: 奇偶检错码, 用于并行数据传送中 海明检错与纠错码,用于并行数据传送中 循环冗余码, 用于串行数据传送中 奇偶校验码 用于并行码检错 原理:在 k 位数据码之外增加 1 位校验位, 使 K+1 位码字中取值为 1 的位数总保持 为 偶数(偶校验)或 奇数(奇校验)。 例如: 0 0 0 1 1 0 0 0 1 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 0 1 奇偶校验码的实现电路 奇较验 偶校验 偶校验出错指示 奇偶校验码常用于: 存储器读写检查; ASCII字符、其他类型信息传送过程中的出错检查。 缺点: 只能发现有无差错,而不能确定发生差错的位置; 只能发现奇数个二进位错,不能发现偶数个二进制错。 海明校验码 用于多位并行数据检错纠错处理 实现:为 k 个数据位设立 r 个校验位, 使 k+r 位的码字同时具有这样两个特性: 1. 能发现并改正 k+r 位中任何一位出错, 2. 能发现 k+r 位中任何二位同时出错,但已无法改正。 要特性1 成立,必须有如下关系: 2r = k+r+1 要特性 1和2 同时成立,k 和 r 有如下关系: 2r-1 = k+r 海明码的编码方法 合理地用 k 位数据位形成 r 个校验位的值,即保证用 k 个数据位中不同的数据位组合来形成每一个校验位的值,使任何一个数据位出错时,将影响 r 个校验位中不同的校验位组合起变化。换言之,通过检查是哪种校验位组合起了变化,就能确定是哪个数据位错,对该位求反则实现纠错。 有时两位错与某种情况的一位错对校验位组合的影响相同,必须能区分一位或双位错。 海明码的编码规律: 假设海明码的最高位号为m,最低位号为1,即:HmHm-1…H2H1。 (1)校验位与数据位之和为m,每个校验位Pi在海明码中被分在位号2i-1的位置,其余各位为数据位,并按照从低到高逐位依次排列的关系分配各数据位。 (2)海明码的每一位码Hi (包括数据位和校验位本身)由多个校验位校验,其关系是被校验的每一位位号要等于校验它的各校验位的位号之和。这样安排的目的,是希望校验的结果能反映出出错位的位号。 (3)在增大合法码码距时,使所有码的码距尽量均匀的增大,以保证对所有码的检错能力平衡提高。 通过检查五个S的结果,可以实现检错纠错的目的: 偶数个数出错,S5一定为0,因此S5可区分两位错或一位出错; 任何一位(含数据位、校验位)均不错,则S4~S1都应为0; S4~S1不全为0,说明有错,例如 若为1100或1011,则分别表示H12或H11位错,由检验线路直接纠正。 海明码常用于:大中型计算机存储器的校验 中科院98年试题: 请写出数据10110100110的海明码,用4位校验位,采用偶校验。 循环冗余码 用于多位串行数据传送中的检错纠错处理,在 k 位数据
文档评论(0)