You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CRC-16多项式等价性及十六进制转换方法咨询

CRC-16多项式相关问题解答

两个多项式是否存在差异?

完全等价,没有任何差异。因为数学上x⁰本身就等于1,所以(x¹⁶ + x¹⁵ + x² + x⁰)和(x¹⁶ + x¹⁵ + x² + 1)是同一个多项式,在CRC-16计算过程中会产生完全相同的结果。

多项式转十六进制数的方法

把多项式转换成十六进制,核心是将多项式的每一项映射为二进制位,再转十六进制:

  • 映射二进制位:多项式中存在xⁿ项,就把二进制数的第n位(从右往左数,最低位为第0位)设为1,不存在的项设为0。以目标多项式为例,存在x¹⁶、x¹⁵、x²、x⁰,对应的二进制就是0b11000000000000101。
  • 二进制转十六进制:将二进制数从右往左每4位分为一组,每组对应1位十六进制数(不足4位的在左侧补0)。上面的二进制分组后是1、1000、0000、0000、0101,分别对应十六进制的1、8、0、0、5,组合起来就是0x18005。

为什么多项式对应的二进制/十六进制是17位长度?

因为这个多项式的最高次项是x¹⁶,二进制位的计数是从第0位开始的,x¹⁶对应的是第16位,所以整个二进制数需要覆盖从第0位到第16位,总共16+1=17位。这是CRC计算的通用规律:n位CRC对应的多项式最高次为xⁿ,其二进制表示必然是n+1位长度,这里是CRC-16,所以对应17位的二进制数。

内容的提问来源于stack exchange,提问作者Michele Allara

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 21:24:54