首页 > 试题广场 >

要发送的数据为11001001,采用CRC的生成多项式是P(

[单选题]

要发送的数据为11001001,采用CRC的生成多项式是P(X)=X3+X+1,则应添加在数据后面的余数为( )

  • 010
  • 101
  • 110
  • 001
这要怎么才能做选择?只能看吗?
发表于 2020-07-28 11:11:00 回复(1)
11001001(000)/1011
发表于 2017-08-25 08:58:01 回复(0)
不懂的同学可以看一下CRC校验(这个帖子 比较通俗易懂):https://blog.csdn.net/weicao1990/article/details/51669853?from=timeline

发表于 2018-04-30 09:38:11 回复(7)
CRC校验的主要分为四步:
1. 获取校验位数。主要通过多项式的最高次方来判断,题目中多项式P(X)=X3+X+1,X最高是3次方,所以检验位数为3。
2. 先用0补齐数据。题中要发送的数据为11001001,校验位数为3,所以在数据末尾再添加上3个0,得到11001001000。
3. 提取多项式的所有系数。题目中多项式P(X)=X3+X+1,也就是P(X)=1*X3+0*X2+1*X1+1*X0,系数就是乘号前面的数字,提取出1011
4. 异或运算。将第二步结果11001001000除以第三步结果1011(异或除法),可以参考置顶的“不会飞的小飞机”帖子里的图片,简单来说,就是相同为0,不同为1,最终得到余数就是CRC校验码,切记是得到的余数,如果不足3位,请用0补齐。
发表于 2020-02-23 08:49:12 回复(0)
由多项式的最高位数可知添在数据后面的余数为3位
刚开始计算时需要在11001001后面添三位0,从多项式可得二进制比特串为1011,使用模二除余法11001001000/1011得余数为001

发表于 2020-04-07 19:46:59 回复(0)
x3+x+1说明是 1011

使用1011进行XOR操作,然后没操作一次右移动第一个1位置继续,直到所有位置都为0.

然后超出来的三个bit就是答案。
发表于 2017-06-04 18:08:17 回复(1)
别忘了补位
发表于 2021-12-26 14:16:26 回复(0)

CRC校验原理


发表于 2019-05-11 18:00:13 回复(0)
循环冗余校验码(CRC)的基本原理是:在K位信息码后再拼接R位的校验码,整个编码长度为N位,因此,这种编码也叫(N,K)码。对于一个给定的(N,K)码,可以证明存在一个最高次幂为N-K=R的多项式G(x)。根据G(x)可以生成K位信息的校验码,而G(x)叫做这个CRC码的生成多项式。 校验码的具体生成过程为:假设要发送的信息用多项式C(X)表示,将C(x)左移R位(可表示成C(x)*2R),这样C(x)的右边就会空出R位,这就是校验码的位置。用 C(x)*2R 除以生成多项式G(x)得到的余数就是校验码。
任意一个由二进制位串组成的代码都可以和一个系数仅为‘0’和‘1’取值的多项式一一对应。例如:代码1010111对应的多项式为x6+x4+x2+x+1,而多项式为x5+x3+x2+x+1对应的代码101111。
发表于 2018-11-28 20:05:54 回复(0)
 11001001(000)/1011 
除法过程中的减法是模2运算,即异或运算(相同相加减为0,不同相加减为1)、不考虑加法进位减法借位的运算
发表于 2018-04-21 20:47:02 回复(0)