打印

请教关于CRC校验

[复制链接]
1812|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
kiucaihu|  楼主 | 2008-2-28 10:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
CRC-16的CRC校验码计算:
产生CRC的过程是:
1.    将一个16位寄存器的值置为0FFFFH(十六进制),所有位都置为1。称之为CRC寄存器。
2.    将信息的第一个8位与CRC寄存器的低位字节进行异或计算,结果放入CRC寄存器。
3.    CRC寄存器向右移动一位(向着最低位LSB),最高位MSB用0填充。提取和检查LSB。
4.    如果LSB是0,重复步骤3(另一个移位);如果LSB是1,把CRC寄存器与多项式值0A001H进行异或操作。
5.    重复步骤3和步骤4,直到完成8个移位。此过程完成后,第一个完整的8位字节就处理完成。
6.    重复步骤2至5,处理信息的下一个8位字节。连续地重复以上过程,直到所有的字节都处理完毕。
7.    CRC寄存器中的最后内容就是信息的CRC值。

我计算0FFH的CRC码,是00FF,用软件得到的是44FF。
请高手指点下。我是OFF与OFF异或=00,CRC码16位=00FF。

相关帖子

沙发
hotpower| | 2008-2-28 10:33 | 只看该作者
板凳
hotpower| | 2018-12-30 00:52 | 只看该作者

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

35

帖子

0

粉丝