我在玩CRC-CCITT(Kermit),我注意到在不同站点上计算校验和时,我得到了不同的结果。
在lammertbies.nl/comm/info/crc-calculation.html上, 123456789 的结果为0x8921,而在crccalc.com上的结果为0x2189。
实际上,在crccalc上输入结果的任何值都与lammertbies相同,但是最后两个字符在前。因此,lammertbies上的 foobar 是0xF4E3,而crccalc上的 foobar 是0xE3F4。
哪个站点正确,另一个站点做错了什么?
答案 0 :(得分:1)
这是报告的CRC值中的大尾数与小尾数的问题。
您可以通过将CRC附加到字符串中并检查附加的字符串中CRC == 0来验证大多数CRC实现。返回两个CRC计算器网站,将输入更改为hex,输入十六进制字符串< / p>
“ 3132333435363738398921”
,并且Kermit CRC将为0000,因此附加到字符串的CRC将为0x89、0x21。