数据通信中应用最广的一种检验差错方法。方法是在发送端用数学方法产生一个循环码,叫做循环冗余检验码。在信息码位之后随信息一起发出。在接收端也用同样方法产生一个循环冗余校验码。将这两个校验码进行比较,如果一致就证明所传信息无误;如果不一致就表明传输中有差错,并要求发送端再传输。
==============================================
在串行传送(磁盘、通讯)中,广泛采用循环冗余校验码(CRC)。CRC也是给信息码加上几位校验码,以增加整个编码系统的码距和查错纠错能力。
CRC的理论很复杂,一般书上只介绍已有生成多项式后计算校验码的方法。检错能力与生成多项式有关,只能根据书上的结论死记。
循环冗余校验码(CRC)的基本原理是:在K位信息码后再拼接R位的校验码,整个编码长度为N位,因此,这种编码又叫(N,K)码。对于一个给定的(N,K)码,可以证明存在一个最高次幂为N-K=R的多项式G(x)。根据G(x)可以生成K位信息的校验码,而G(x)叫做这个CRC码的生成多项式。
校验码的具体生成过程为:假设发送信息用信息多项式C(X)表示,将C(x)左移R位,则可表示成C(x)*2R,这样C(x)的右边就会空出R位,这就是校验码的位置。通过C(x)*2R除以生成多项式G(x)得到的余数就是校验码。
分享到:
相关推荐
循环冗余校验 CRC 的算法分析和程序实现 西南交通大学计算机与通信工程学院 刘东 摘要 通信的目的是要把信息及时可靠地传送给对方,因此要求一个通信系统传输消息必须可靠 与快速,在数字通信系统中可靠与...
CRC校验原理解释以及范例 CRC校验原理解释以及范例 CRC校验原理解释以及范例
因而,在数据存储和数据通讯领域,CRC无处不在:著名的通讯协议X.25的FCS(帧检错序列)采用的是CRC-CCITT,ARJ、LHA等压缩工具软件采用的是CRC32,磁盘驱动器的读写采用了CRC16,通用的图像存储格式GIF、TIFF等也都...
CRC16算法
CRC算法参数模型解释: NAME:参数模型名称。 WIDTH:宽度,即CRC比特数。 POLY:生成项的简写,以16进制表示。例如:CRC-32即是0x04C11DB7,忽略了最高位的"1",即完整的生成项是0x104C11DB7。 INIT:这是算法...
1、循环校验码(CRC码):是数据通信领域中最常用的一种差错校验码,其特征是信息字段和校验字段的长度可以任意选定。
首先说一下CRC的基本概念,CRC(Cyclic Redundancy Check)官网是这样解释的:CRC是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定。 labvIEW编写的CRC校验程序,CRC32/CRC...
CRC算法参数模型解释: NAME:参数模型名称。 WIDTH:宽度,即CRC比特数。 POLY:生成项的简写,以16进制表示。例如:CRC-32即是0x04C11DB7,忽略了最高位的"1",即完整的生成项是0x104C11DB7。 INIT:这是...
CRC16校验原理附C语言源码,相信描述CRC16算法原理,附带的C语言代码,可以直接使用
CRC16、CRC32维检验源代码,以及CRC校验解释说明,多种方式实现CRC校验
CRC校验用到的资料,非常全面,讲解很到位,大家可以看看
这是一篇关于CRC原理解析的英文论文!对CRC算法进行了很详细的解释。
适用于1200/1500的DB块的多字节CRC校验; 输入点解释: DB号:创建数据块需要校验的字节所在DB编号; 起始字节:要校验的字节起始地址(需要关闭数据块“优化块访问”功能); 字节数量:从起始字节开始的要校验的...
IEEE 802.3规定的CRC算法解释说明,pdf版本
DLT645协议解析器及modbus CRC和DLT CS校验码计算,支持两种输入格式,带空格和不带空格。默认需要安装微软VS2012发布包。 比如输入FE FE FE FE 68 AA AA AA AA AA AA 68 13 00 DF 16,解析出结果如下: [11-05 08:...
网上的教程一大堆,但是很多讲的太深入,让人看的云里雾里,不明所以,所以我才想写一个高中生都能看懂的,不那么深入的,专注于应用的,通俗易懂的CRC校验的解释 何为校验 比如我写了一封电子邮件给你,它是用二...
CRC RevEng是一款便携式,任意精度的CRC计算器和算法查找器。 它使用107种预设算法中的任何一种或用户指定算法的任意宽度来... 它包含强大的输入解释选项。 符合Ross Williams的参数化CRC算法的Rocksoft(tm)模型。
CRC RevEng是一款便携式,任意精度的CRC计算器和算法查找器。 它使用107种预设算法中的任何一种或用户指定算法的任意宽度来... 它包含强大的输入解释选项。 符合Ross Williams的参数化CRC算法的Rocksoft(tm)模型。
该软件可以用来验证通信CRC-16码,源码中的含有语句解释,供参考。
CRC算法参数模型解释: NAME:参数模型名称。 WIDTH:宽度,即CRC比特数。 POLY:生成项的简写,以16进制表示。例如:CRC-32即是0x04C11DB7,忽略了最高位的"1",即完整的生成项是0x104C11DB7。 INIT:这是算法开始...