ChinaUnix.net
相关文章推荐:

tcp crc校验

1、循环校验码(crc码):是数据通信领域中最常用的一种差错校验码,其特征是信息字段和校验字段的长度可以任意选定。 2、生成crc码的基本原理:任意一个由二进制位串组成的代码都可以和一个系数仅为‘0’和‘1’取值的多项式一一对应。例如:代码1010111对应的多项式为x6+x4+x2+x+1,而多项式为x5+x3+x2+x+1对应的代码101111。 3、crc码集选择的原则:若设码字长度为N,信息字段为K位,校验字段为R位(N=K+R),则对于crc码集中的任...

by wilsonwong - Linux文档专区 - 2008-07-29 13:44:54 阅读(1039) 回复(0)

相关讨论

本帖最后由 bandaotidejia 于 2014-09-14 10:00 编辑 crc算是一种hash算法,根据算出的校验和来判断是否数据内容被修改过。 和其他hash算法比它的优势在哪里?可以保证绝对没有冲突吗?

by bandaotidejia - C/C++ - 2014-09-14 12:54:57 阅读(1342) 回复(2)

http://www.dzjs.net/html/qianrushixitong/2006/0905/529.html

        这两天做项目,需要用到 crc 校验。以前没搞过这东东,以为挺简单的。结果看看别人提供的汇编源程序,居然看不懂。花了两天时间研究了一下 crc 校验,希望我写的这点东西能够帮助和我有同样困惑的朋友节省点...

by mutes - 移动操作系统 - 2011-12-23 01:19:37 阅读(753) 回复(0)

查表的crc校验方法,协议中告知了一个crc16的多项式0xA001,这个有什么用,或者是怎么用?哪位写过类似的,请帮忙,谢谢。

by mycount - C/C++ - 2006-08-23 13:36:38 阅读(1227) 回复(1)

(六)crc校验 crc校验,不纠错。 运算法则 1010011/1011=1001 1010101/1011=1001……..110 3、crc码的生成步骤 F(X)=XkD(X)+R(X) 4位的原始报文为1010: D(X) 假设使用的生成多项式是G(x)=x3+x+1:1011 Xk:X的3次方: 1010000: XkD(X) 011: R(X)为XkD(X)模2除G(x)的值 (校验位) 1010011:F(X) :实际传输的值 4、报文只有乘以X的k次方,即由于模2运算为位运算,为了保证原始报文位数大于等于G(x)的位数,这样才能进行...

by TAxxjszxlkjf - 网络技术文档中心 - 2006-05-23 09:45:47 阅读(936) 回复(0)

crc分片校验更新只拷贝单个文件中的差异部分,将对比单位精确到二进制级别,极大提升了大文件和超大文件的更新效率。 如何才能将crc分片校验更新应用到网吧中去,将是本文主要进行讲解的,下面分两步来解说它的实现过程。 第一步:为游戏建立crc分片校验 在游戏选单里选中一个游戏的图标,同时按下组合键Ctrl+Alt+U,调出如图1-1所示的对话框,运行[分片更新]。 进入分片文件设置窗口,如图1-2所示。 分片文件设置按如图1-3所...

by juewu11 - 网络技术文档中心 - 2007-07-06 04:31:52 阅读(972) 回复(0)

/* *By Neil Chiao ( [email=neilchiao@163.com]neilchiao at gmail.com[/email] ) *转载请注明出处: neilengineer.cublog.cn */ crc(Cyclic Redundancy Code)中文是“冗余校验码”的意思。crc32则表示会产生一个32bit(8位十六进制数)的校验值。由于crc32产生校验值时源数据块的每一个bit(位)都参与了计算,所以数据块中即使只有一位发生了变化,也会得到不同的crc32值。 crc32表示使用32位来保存错误检查信息...

by neilengineer - Linux文档专区 - 2009-03-28 10:53:08 阅读(1218) 回复(0)

public class crc16 { private char[] crc_tb = { 0x0000, 0x1021, 0x2042, 0x3063, 0x4084, 0x50a5, 0x60c6, 0x70e7, 0x8108, 0x9129, 0xa14a, 0xb16b, 0xc18c, 0xd1ad, 0xe1ce, 0xf1ef, 0x1231, 0x0210, 0x3273, 0x2252, 0x52b5, 0x4294, 0x72f7, 0x62d6, 0x9339, 0x8318, 0xb37b, 0xa35a, 0xd3bd, 0xc39c, 0xf3ff, 0xe3de, 0x2462, 0x344...

by buildspring - Java文档中心 - 2008-12-16 16:32:24 阅读(1437) 回复(0)

crc_32(long crc,char c ) { int data=(unsigned long )c; 1: crc = (crc >> 8) ^ crc_tab32[ (crc^data) & 0xFF ]; 2: crc = ((crc << 8) | data) ^ crc_tab32[(crc >> 24) & 0xFF]; } 请问下算法1与算法2有啥不同,我在网上找的大多是算法2的资料

by ydyyun - C/C++ - 2007-05-21 17:44:26 阅读(1371) 回复(0)

各位大虾: 我现在使用的校验和算法如下: short checksum(uchar *buf, int headerlength) { uint16 ChecksumTemp; uint32 Checksum; for(Checksum=0;headerlength>0;headerlength--) { ChecksumTemp=*buf++; ChecksumTemp=(ChecksumTemp)<<8; ChecksumTemp+=*buf++; Checksum+=(~ChecksumTemp); } Checksum=(Checksum>>16)+(Checksum & 0xffff); Checksum+=(Checksum>>16); return (short)(Checksu...

by ilikeacmlian - C/C++ - 2006-11-07 23:00:14 阅读(1624) 回复(4)

我“抄”了一段生成 crc32 校验码的代码,如下:(crc32_TABLE,是 crc32的参数表) 现在我对字符串 "ilovethisgame!" 得到的校验码为 6eebcdb6,这个结果是否正确?请指教。 [code]unsigned long Createcrc32(char * databuf,unsigned long len) { unsigned long oldcrc32,crc32,oldcrc; unsigned int charcnt; char c; unsigned long t; oldcrc32 = 0x00000000; charcnt = 0; while(len --) { t = ( oldcrc32 >;>; ...

by sashow - C/C++ - 2004-05-11 15:27:25 阅读(1317) 回复(1)