了解多项式除法结果

Understanding polynomial division results

我正在尝试理解(并实现函数)多项式除法。

我的第一步是了解和比较两个在线工具的结果。 first is a formal GF(2) polynomial calculator. The second 是一个 CRC 多项式计算器。我希望正式计算器的余数等于 CRC 计算器的校验和。

所以我在正式计算器中输入了以下数据:

A = 0100000101000001 (should be same as "AA" ASCII data)
B = 11111

然后我在 CRC 计算器中输入了以下内容:

CRC order = 4
CRC polynom = F
Data sequence = AA
Initial = 0, Direct, no reverse input, no reverse output

我使用了宽度 4 和多项式 F(而不是 51F),因为 CRC 计算器期望标准符号中的多项式省略前导 1-位.

CRC 计算器表示校验和为 2 而正式计算器表示二进制余数为 100 = 4.

为什么我没有得到相同的结果?

您需要在被除数中添加四个零位,即01000001010000010000。然后你会得到相同的结果。

请参阅 Ross William's CRC tutorial 了解 CRC 的计算方式。