请求CRC相关解惑(Hotpower能来看更好)
请看下面图片,CRC校验码产生本来很简单,但按照下图的要求,Byte交换,取补码(或反码)。我怎么都不能从C0FC产生0EF8, 也不能从C0FC0EF8产生470F,求帮助。Hotpower最近似乎很忙 这个应该是Hotpower的专长 说的详细点 本帖最后由 forrest11 于 2012-12-20 00:51 编辑
我的理解,大概的意思是:
当多项式为:X16+X12+X5+1(CRC16_CCITT),初值为FFFF时,
对输入数据进行计算(LSB优先,这里的LSB应该是Bit而不是Byte,但不确定),然后对输出结果Byte交换,且取反(或取补),即得到CRC校验值。
为了验证此校验值是否正确,可用上述方法同样将数据+CRC计算一次,得到的结果为0x470F即为正确。
然后举例:0xC0FC经过计算得到0EF8;C0FC0EF8经过计算得到0x470F
可我怎么都算不出来。 自己知道了,谢谢!结贴。 这个有点深奥 我下午穷举一下 http://www.hotpage.com.cn/hotcrc 2017年我升级了hotcrc,可以理论上**任意CRC了。
页:
[1]