【发布时间】:2018-07-11 10:05:06
【问题描述】:
我将使用 slice by 8 算法实现 CRC24C 计算。我已经成功实现了数据位数是 8 的倍数的情况。但是,当输入位数不是 8 的倍数时,8 分片算法失败。我打算将数据位分成两部分,一部分包含 # 个数据位,它是 8 的倍数,另一部分包含剩余位。单独计算CRC24C并将其组合。但是我无法找到一种方法来组合两个单独计算的 CRC。任何建议或想法都会非常有帮助。
【问题讨论】:
-
我正在用 c++ 实现,所以我虽然它是相关的
-
如果数据位是 8 的倍数,您可以只添加零位直到数字。如果您希望哈希值在这些地方实际上是零的情况下有所不同,请找到要添加的其他内容。
-
我已尝试附加零,但它导致的 CRC 值与正确值不同。
-
@V.Kravchenko 非常感谢您的建议,我在整数的 LSB 侧附加零导致不同的 CRC,在整数的 MSB 侧附加零后,我得到了正确的 CRC。