循环冗余校验码汇编.pptxVIP

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
循环冗余校验码汇编

循环冗余校验码 概述 循环冗余检查(CRC)是一种数据传输检错功能,对数据进行多项式g(X)计算,并将得到的结果附在要传输的信息的后面,接收设备也执行类似的算法,以保证数据传输的正确性和完整性。若CRC校验不通过,系统重复向硬盘复制数据,陷入死循环,导致复制过程无法完成。出现循环冗余检查错误的可能原因非常多,硬件软件的故障都有可能。接收方如何检查收到的信息有无错误? 首先接收方和发送方约定一个“生成多项式”g(x)。相当于两方传递信息需要对的口令。 引言 CRC(Cyclic Redundancy Check)循环冗余校验码,是常用的校验码,在早期的通信中运用广泛,因为早期的通信技术不够可靠(不可靠性的来源是通信技术决定的,比如电磁波通信时受雷电等因素的影响),不可靠的通信就会带来‘确认信息’的困惑。 简介 对通信的可靠性检查就需要‘校验’,校验是从数据本身进行检查,它依靠某种数学上约定的形式进行检查,校验的结果是可靠或不可靠,如果可靠就对数据进行处理,如果不可靠,就丢弃重发或者进行修复。 (倒推法):发送方发送的是T(x),接收方接收到的是R(x),若T(x)和R(X)相等,则传输的过程中没有出现错误。如何判断T(x)和R(X)是否相等?若R(X)能够被g(x)整除,则接收方认为T(x)和R(X)相等,即传输的过程中没有出现错误。发送方要传输的信息info包含在T(x)里,info是T(x)的一部分,但不能说info就是T(x)。 实际应用中,g(x)的取值是有限制的,它受限于以下国际标准: CRC-CCITT=x^16+x^12+x^5+1 CRC-16=x^16+x^15+x^2+1 CRC-12=x^12+x^11+x^3+x^2+x+1 关于g(x)的国际标准还有一些,这里不一一介绍。 人工计算循环冗余校验码需要先弄清的知识:多项式除法、异或运算。 编码规则 CRC码是由两部分组成,前部分是信息码,就是需要校验的信息,后部分是校验码,如果CRC码共长n个bit,信息码长k个bit,就称为(n,k)码。它的编码规则是: 移位 将原信息码(kbit)左移r位(k+r=n),而后尾巴上添r个0。 相除 运用一个生成多项式g(x)(必须转换成二进制数)用模2除上面的式子,得到的余数就是校验码。 移位后的信息码mod多项式g(x)=校验码 编码规则 非常简单,要说明的:模2除就是在除的过程中用模2加,模2加实际上就是我们熟悉的异或运算,就是加法不考虑进位,公式是: 0+0=1+1=0,1+0=0+1=1 即‘异’则真,‘非异’则假。 由此得到定理:a+b+b=a 也就是‘模2减’和‘模2加’直值表完全相同。 有了加减法就可以用来定义模2除法,于是就可以用生成多项式g(x)生成CRC校验码。 CRC码生成和校验基本分为三步: 第一步:在数据单元(k位)的末尾加上r个0。r是一个比预定除数g(x)的比特位数(r+1)少1的数。 第二步:采用二进制除法将新的加长的数据单元(k+r位)除以除数g(x) 。由此除法产生的余数就是循环冗余码校验码。 3.CRC码的生成 第三步:求CRC循环冗余校验码 (K+r)被除数+r(余数) 如果余数位数小于r,最左的缺省位数为0。 如果余数为0,则r=0。 CRC码的生成 生成多项式g(x)要满足的原则 生成多项式应满足以下原则 a、生成多项式的最高位和最低位必须为1。 b、当被传送信息(CRC码)任何一位发生错误时,被生成多项式做模2除后应该使余数不为0。 c、不同位发生错误时,应该使余数不同。 d、对余数继续做模2除,应使余数循环。 任何一个二进制数序列可以和一个只含有0和1两个系数的代数多项式建立起一一对应的关系。因此,用来求CRC码的那个除数通常用多项式来表示。原因如下: 代数多项式很短 可以通过多项式来进行概念的数学证明。 5.多项式 多项式 任何一个n位的二进制数都可以用一个n-1 次的多项式来表示,这种多项式叫码多项式(又叫信息多项式) 。 码多项式与二进制序列之间的一一对应关系: (an-1 an-2……a1a0)N A (x)= an-1Xn-1+an-2Xn-2 +……+a1X+a0X0 码多项式 多项式 二进制序列实例 以n=3位二进制数为例 二进制数 对应多项式 000 001 010 011 100 101????? 111????? 0 1 x x+1 x2 x2+1 x2+ x+1 1011011 ? x6+x4+x3+x+1 x5+x4+x2+x

您可能关注的文档

文档评论(0)

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

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档