2 jaymarck jaymarck 于 2014.01.23 22:01 提问

关于CRC循环冗余校验,如何得到这个数据包的校验码

各位大侠好,
现在在做数据上传时,因CRC校验码错误的问题,一直无法解决。
以下有两个数据包,是正确并通过了服务器检测的数据包:
数据包一:
##0121ST=32;CN=2011;PW=123456;MN=0760S77305385X;CP=&&DataTime=20140123155916;011-Rtd=27.09,011-Flag=N;060-Rtd=0.13,060-Flag=N&&6840
数据包二:
##0121ST=32;CN=2011;PW=123456;MN=0760S77305385X;CP=&&DataTime=20140123155946;011-Rtd=27.09,011-Flag=N;060-Rtd=0.13,060-Flag=N&&5440

数据包中最后4位数是CRC校验码“6840”,“5440”。被校验的数据是除包头##以及表示数据长度的四位数(“0121”)之外,后面的数据段。

请问,上面的数据包如何计算才能得到后面的校验码“6840”,“5440”?
我按照算法编程,对上面的包进行了计算,就是得不出“6840”,“5440”。请各位支招。

1个回答

cwc2405
cwc2405   2014.10.27 23:35

计算结果采用(小端序)

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!