|
闂傚倷鑳堕幊鎾绘倶閸儱纾婚柟鍓х帛閻撴盯鏌涢顐簻闁诲骏绻濋弻锛勨偓锝庝簻閺嗙偤鏌熼娑欘棃妤犵偞锚鐓ょ紓浣贯缚椤┿劌鈹戦敍鍕杭闁稿ě鍥х闁跨噦鎷�
|
缂傚倸鍊搁崐鎼佸磹瑜版帗鍋嬫繝濠傜墕閻撴繈鏌ㄩ悤鍌涘
|
IC
|
闂傚倷绀侀幖顐﹀箠韫囨搫鑰块柛锔诲幘缁€濠囨倵閿濆骸澧板☉鎾崇Ч閺屻劑鎮ら崒娑橆伓
|
缂傚倸鍊风欢锟犲窗濡も偓閻e嘲螣濞嗙偓姣�
|
婵犵數鍋為崹鍫曞箹閳哄懎鐭楅柛鎰靛枔閳ь剙鍊块弫鎾绘晸閿燂拷
|
闂傚倷鑳舵灙缂佺粯顨呴埢鏂库槈閵忊€充患闂佽法鍣﹂幏锟�
|
闂傚倷鐒﹂惇褰掑垂瑜版帗鍊舵慨妯跨簿婵娊鏌ㄩ悤鍌涘
|
闂傚倷鑳剁涵鍫曞疾閻愭祴鏋嶉柨婵嗩槶閳ь兛绶氶弫鎾绘晸閿燂拷
|
闂傚倷鐒﹀鍨熆閳ь剛绱掗幓鎺濈吋鐎规洘绮撻弫鎾绘晸閿燂拷
|
闂傚倷绀侀幖顐﹀疮閻楀牊鍙忛柣鎴f閸氬綊鏌ㄩ悤鍌涘
|
濠电姷鏁搁崑鐐哄垂闂堟侗鍤曢悹楦裤€€閺嬪秹鏌ㄩ悤鍌涘
|
闂佽娴烽弫濠氬磻婵犲洤绐楁俊銈呭暕閻掑﹪鏌ㄩ悤鍌涘
|
缂傚倸鍊风粈渚€鎯岄崒婊呯=婵ǹ鍩栭崕宥夋煥閻曞倹瀚�
|
闂傚倷绀佺紞濠傖缚瑜旈、鏍幢濡炵粯鏁犻梺閫炲秵瀚�
|
|
闂傚倷鑳剁划顖炲春閸儱鍌ㄥù鐘差儏缁犳澘顭块懜闈涘闂傚偆鍨堕弻銊╂偆閸屾稑顏�
|
闂傚倷鐒﹂惇褰掑垂閽樺缂氱憸搴ㄥ箞閵娾晛鐓涢柛灞剧☉椤繝姊虹捄銊ユ珢闁瑰嚖鎷�
|
LED闂備浇顕х换鎺楀磿閹达箑绠柨鐕傛嫹
|
闂傚倷鑳剁划顖滄暜閹烘鏅濋柕澶堝劗閺€锕傛煃瑜濋幏锟�
|
您现在的位置: 华玉生活网 >> 技术文库 >> 基础 >> 正文>> 稑体中文

循环冗余校验码---CRC码

循环冗余校验码---CRC码


  二进制信息位串沿一条信号线逐位在部件之间或计算机之间传送称为串行传送。CRC(Cyclic Redundancy check)码可以发现并纠正信息串行读写、存储或传送过程中出现的一位、多位错误,因此在磁介质存储器读写和计算机之间通信方面得到广泛应用。

  CRC码一般是指k位信息码之后拼接r位校验码。应用CRC码的关键,是如何从k位信息位简便地得到r位校验位(编码)的值,以及如何判断k+r位的码字是否正确。下面仅就CRC码应用中的问题做简单介绍(有关的理论问题请参阅有关书籍)。

① CRC码的编码方法

  先介绍CRC码编码用到的模2除运算。

  模2运算是指以按位模2相加为基础的四则运算,运算时不考虑位间进位和借位。

  模2加减:即按位加,可用异或逻辑实现。模2加与模2减的结果相同,即
    0±0=0 0±1=1 1±0=1 1±1=0。两个相同的数据的模2和为0。

  模2乘:按模2加求部分积之和。
  例:    1010
        101
     
       1010
       0000
      1010
     
       100010

  模2除:按模2减(加)求部分余数。每求一位商应使部分余数减少一位。
  上商的原则是:当部分余数的最高位为1时,该位商取1;为0时,该位商取0。当部分的余数的位数小于除数的位数时,该余数即为最后余数。
  例如,


    

  下面介绍CRC码的编码方法。
  首先,可将待编码的k位有效信息位表达为多项式M(x)形式:
    M(x)= Ck-1xk-1 + Ck-2x k-2+…+Cixi+…+C1x1+C0
  式中Ci为0或1,x为伪变量,并用xi指明各位间的排列位置。

  若将信息位组左移r位,则可表示为多项式M(x) * xr ,这样就可以空出初值为0的r个校验位,即
      

  CRC码的码字,是用k个数据位拼接上r个校验位得到的。校验位的值,就是通过对多项式M(x) * xr除以生成多项式G(x)(特定的一个多项式)所得到的余式。为了得到r位余数(校验位),G(x)必须是r+1位的,即为r次的多项式。
设所得余数表达式为R(x),商为 Q(x),就有:
     M(x).xr / G(x) = Q(x) + R(x) / G(x)

  将r次余式直接拼接在源数据多项式的右侧,可写成M(x).xr + R(x),并可推导出:
     M(x).xr + R(x) = [ Q(x)* G(x) + R(x) ] + R(x)
             = [ Q(x)* G(x) ] + [ R(x)+R(x) ]
             = Q(X)* G(x)

  这证明所得到的CRC码字是一个可被G(x)(多项式)数码除尽的数码(多项式)。
  例:对四位源信息 1100,来求三个校验位的值,可选择生成多项式为 1011,则有:
     M(x) = x3 + x2 = 1100    (k = 4)
     M(x)*x3 = x6 + x5 = 1100000 (左移, r = 3位)
     G(x) = x3+ x + 1 =1011    (r+1 = 4位)

  

  所得到的码字(系统线性(7,4)分组码)为:
     M(x).x3 + R(x) = 1100000 + 010 = 1100010


  • 扩展阅读
  • 上一个文章:
  • 【返回网站首页】 【返回基础】
  • 下一个文章:
  • 【字体: 】【】【发表评论】【加入收藏】【告诉好友】【打印此文
    文章 软件 电影 商品

    相关文章

    本站公告

    • 扫一扫,打赏给我们,谢谢!

      本站2016年12月16日起取消ruida.org.cn域名,该域名正式作废,该域名发布任何信息与本站无关。


      启用ruida.orghy928.net域名;

      瑞达网,瑞达科技网宣

    专 题 栏 目

    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
        没有任何评论

    | 服务声明 | 充值中心| 华安五金电器 | 收费标准| 论坛| 留言| 实用查询| 会员中心| 下载帮助| 设为首页|

    技术支持:瑞达科技 即时交谈QQ:237013889 QQ群:13810759 E-Mail:237013889@qq.com
    非盈利网站,如有侵权,请来信来电告知,第一时间处理,谢谢!
    桂ICP备17008104号 华玉生活网网站统计
    tj