CRC除数计算

tMC*_*tMC 8 algorithm crc

我试图理解CRC,我对如何计算'除数'感到困惑.

维基百科上示例中,除数为11(1011),输入为11010011101100

11010011101100 000 <--- input left shifted by 3 bits
1011               <--- divisor (4 bits) = x³+x+1
------------------
01100011101100 000 <--- result
Run Code Online (Sandbox Code Playgroud)

除数是如何计算的?在这个例子中(x³+ x + 1)x是2?2来自哪里?

Chr*_*ris 2

从同一个维基百科的“CRC 数学”部分开始,“对这种除法过程的数学分析揭示了如何选择保证良好错误检测特性的除数。” 这是关键。有些除数比其他除数更好,因此您只需找到一个标准除数并通常使用即可。

该页面的底部描述了所使用的一些不同的 CRC 以及定义其除数的多项式。