crc算法经常用到,如下总结了常用的三种。有兴趣的copy回家用。 呵呵 crc16算法和代码如下 [code] unsigned short crc16(char *data_p, unsigned short length) { unsigned char i; unsigned int data; unsigned int crc = 0xffff; if (length == 0) return (~crc); do { for (i=0, data=(unsigned int)0xff & *data_p++; i < 8; ...
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的资料
当计算好crc32数据后,加在ethernet frame后面,当接受时,验证带crc32的数据的正确性时,计算crc32, 这时的 crc32的magic value是多少呢?
我“抄”了一段生成 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 >;>; ...
比如 import zlib text = 'abcd' zlib.crc32(text) 返回 -310194927 在后面怎么用这个返回值判断text = 'abcd'对不对呢
发个在AS/400上可以跑的算crc32的C程序 [code] /* crc32F.c -- Calculate crc32 for a file M.L.Y 2005.5 MODIFIED (YYYY.MM.DD) ...