C#计算CRC16校验码示例

上传者: sub7v21 | 上传时间: 2022-01-04 20:38:35 | 文件大小: 43KB | 文件类型: -
遇到要做个CRC校验,翻了一堆资料终于看明白了,内有详细注释,不是普通的词典法,是用算法计算出来的CRC,对于CRC16-CCITT,只需替换公式即可 /* CRC16实现原理 * * CRC16 | g(x)=x16+x15+x2+1 | 0x1,80,05 | 1,1000,0000,0000,0101 * * 由于在步骤进行了取反,这里也要把公式反过来 * 0x8005 1000000000000101 * 0xA001 1010000000000001 * * 1.置16位CRC寄存器CRCFull全为1 * 2.数据message[i]一个字节8位与CRCFull异或,结果存在CRCFull(作用是取反) * 3.CRCFull最低位存在CRCLSB,CRCFull右移一位(向低位),用0填补最高位 * 4.检查原最低位即CRCLSB: * 1:CRCFull与多项式0xA001异或 * 0:重复步骤 * 5.重复步骤和,直到右移8次,处理完整个message[i]字节 * 6.重复步骤到,进行下一个字节8位数据的处理,直到(message.Length) * 7.最后得到的CRC寄存器CRCFull即为此数据的CRC16码 * * * */

文件下载

评论信息

  • prc12 :
    感谢分享,感谢分享!
    2021-01-13
  • qq_16414657 :
    没有实质性作用,功能简单不建议使用
    2018-05-10
  • wangbowxb :
    谢谢分享,有参考价值
    2018-03-12
  • steham :
    唉 下载过了 还是再试试
    2017-10-10
  • zouli_aaa :
    谢谢分享,有参考价值。
    2017-01-05

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明