【问题标题】:I cannot derive the CRC16 algorithm from a data set我无法从数据集中推导出 CRC16 算法
【发布时间】:2020-04-15 19:48:35
【问题描述】:

关于 CRC16 计算的第 2.3 节:

https://www.mennegat.nl/media/shop_item/Mezzo_Doc_1.1.0.pdf

它试图解释如何计算校验和。我有一个计算的工作示例

d37ccb00526000000014000000

作为校验和:

0825

UDP数据包的整个有效载荷是

02d37ccb00526000000014000000082503

设备响应它是一个完全可接受的数据包。我似乎无法通过所有示例 crc 检查找到 0825 的 16 位匹配项。

我们使用以下 16 位 crc 检查,我认为它们中的任何一个都不会输出 0825 作为结果。

https://github.com/sigurn/crc16/blob/master/crc16.go#L26-L48

感谢您的帮助!

【问题讨论】:

    标签: crc crc16


    【解决方案1】:

    CRC 似乎是以小端格式存储的。以链接代码为基础,初始值CRC=0,代码生成的CRC为0x2508,存储为0x08 0x25。

    初始值导致 CRC = 0x0825 的可能性很小,但需要更多示例数据。

    【讨论】:

      猜你喜欢
      • 2014-11-27
      • 1970-01-01
      • 1970-01-01
      • 2021-10-04
      • 1970-01-01
      • 1970-01-01
      • 2019-10-20
      • 2018-11-21
      • 1970-01-01
      相关资源
      最近更新 更多