CRC(16位)多项式为 X16+X15+X2+1

其对应校验二进制位列为1 1000 0000 0000 0101,可这有17位啊,我怎么和16位信息进行异或啊?是不是不要最高位的1

你没有弄明白crc的意思.
这17位后面再添上16个零,然后开始抑或运算.共33位.
从前到后运算,一位一位来:当这一位数值是1的时候就取这一位开始往后的16位与校验多项式异或,结果顶替对应的16位数值;当这一位数值是0的时候跳过.
前17位算完了(其实也都清零了),剩下16位就是crc校验值了.

假设生成多项式为:G(X)=X16+X15+X2+1,它产生的校验码为多少位?

CRC-16标准规定的生成多项式为g(x)=x16+x15+x2+1,它产生的校验码是 16 位,接收端发现错误后采取的措施是 自动请求重发 .
我帮你百度的.

原文地址:https://www.cnblogs.com/zhangzhifeng/p/5583149.html