推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

实例分析CRC16校验码如何计算

更新时间:2018-03-20 21:22:03 大小:3K 上传用户:电子大神查看TA发布的资源 标签:crc16 下载积分:1分 评价赚积分 (如何评价?) 收藏 评论(0) 举报

资料介绍

学习CRC16进行校验的一些心得分析一下。

比如我有一个16进制只字符串 
7E 00 05 60 31 32 33 要在末尾添加两个CRC16校验码  校验这7个16进制字符 请写出算法和答案

 

7E 00 05 60 31 32 33 计算CRC16结果应该是:5B3E

方法如下:
CRC-16码由两个字节构成,在开始时CRC寄存器的每一位都预置为1,然后把CRC寄存器与8-bit的数据进行异或(异或:二进制运算 相同为0,不同为1;0^0=0;0^1=1;1^0=1;1^1=0),   之后对CRC寄存器从高到低进行移位,在最高位(MSB)的位置补零,而最低位(LSB,移位后已经被移出CRC寄存器)如果为1,则把寄存器与预定义的多项式码进行异或,否则如果LSB为零,则无需进行异或。重复上述的由高至低的移位8次,第一个8-bit数据处理完毕,用此时CRC寄存器的值与下一个8-bit数据异或并进行如前一个数据似的8次移位。所有的字符处理完成后CRC寄存器内的值即为最终的CRC值。


部分文件列表

文件名大小
CRC16校验码如何计算.doc

全部评论(0)

暂无评论