识别 CRC 的多项式项

Identifying polynomial terms of the CRC

我正在查看 this page,我看到这个多项式的项:

  1. 0xad0424f3 = x^32 +x^30 +x^28 +x^27 +x^25 +x^19 +x^14 +x^11 +x^8 +x^7 +x^6 +x^5 +x^2 +x +1

这似乎不正确,因为转换了十六进制:

0xad0424f3 is 10101101000001000010010011110011

它将变成:

  1. x^31+ x^29+ x^27+ x^26+ x^24+ x^18+ x^13+ x^10+ x^7+ x^6+ x^5+ x^4+ x^1+ x^0

你能帮我看看哪个是正确的吗? 64 位 ECMA 多项式呢,

0xC96C5795D7870F42

我想知道每个多项式 0xad0424f30xC96C5795D7870F42 的项数。

该页面在 Koopman 的网站上,他有自己的 CRC 多项式符号。由于所有 CRC 多项式都有一个 1 项,他删除了该项,将多项式除以 x,并表示 that 二进制。这就是你正在看的。

好处是,对于 64 位字,您可以表示所有 64 位和更短的 CRC 多项式,CRC 的长度由字中最高有效位 1 表示。

缺点是,据我所知,只有库普曼使用该表示法,导致其他人有些混淆。喜欢你自己。

至于您的 64 位 CRC,您记下的多项式来自 Wikipedia page 实际上是 reversed 版本,并且不在 Koopman 符号中。多项式的展开显示在十六进制表示的下方。它有 34 个术语。