请教关于CRC校验

[复制链接]
 楼主| 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

粉丝
快速回复 在线客服 返回列表 返回顶部