CRC16算法

CRC16 标准

目前常用CRC16算法主要是依据以下两种标准:

CRC标准.png

CRC16 算法

按照使用环境不同,主要有以下三种实现:

  1. 按位计算
    程序空间十分苛刻但 CRC 计算速度要求不高的微控制器系统
  2. 按字节计算
    程序空间较大且 CRC 计算速度要求较高的计算机或微控制器系统,
  3. 半字节计算
    程序空间不太大,且 CRC 计算速度又不可以太慢的微控制器系统。

代码实现

详细参见https://github.com/Cheava/Util/tree/master/crc

参考资料

  1. 我学习CRC32、CRC16、CRC原理和算法的总结(与WINRAR结果一致) - xiaogugood的专栏 - 博客频道 - CSDN.NET
    http://blog.csdn.net/xiaogugood/article/details/8724745
  2. CRC算法原理及C语言实现(介绍了3种方法)_百度文库
    http://wenku.baidu.com/view/b752c9707fd5360cba1adbf0.html
  3. 几种CRC16计算公式、初始值、标志位等参数汇总 - . - 博客频道 - CSDN.NET
    http://blog.csdn.net/htmlxx/article/details/17369105
  4. On-line CRC calculation and free library
    https://www.lammertbies.nl/comm/info/crc-calculation.html

你可能感兴趣的:(CRC16算法)