给出生成多项式G(x)=x^4+x^2+1对应的二进制位串以及位串1011011对应的多项式,并为该位串进行CRC编码,写出编码过程及编码后的结果。

给出生成多项式G(x)=x^4+x^2+1对应的二进制位串以及位串1011011对应的多项式,并为该位串进行CRC编码,写出编码过程及编码后的结果。


【正确答案】:

生成多项式的G(X)对应的位串为10101,位串1011011对应的多项式为 X^6+X^4+X^3+X+1。
对位串1011011进行CRC编码,求余数R的过程:


得到编码后的结果为10110111100。


【题目解析】:

CRC编码的基本思想是:将二进制位串看成是系数为0或1的多项式的系数。一个k位二进制数据可以看作是一个k-1次多项式的系数列表,该多项式共有k项,从x^(k-1)到x^0。这样的多项式被认为是k-1阶多项式。故多项式G(x)=x^4+x^2+1对应的比特串为10101,其阶为4。

假设G(x)的阶为r (即对应的位串为r+1位),则CRC编码过程如下。
1) 在帧的低位端加上r个0位,使该帧扩展为m+r位,对应的多项式为 x^rM(x)。故在帧的尾部附加一个校验和,即4个0。得到10110110000。

2) 用G(x)系数对应的位串,去除(模2除法)x^rM(x)系数对应的位串,求得r位余数R。故得到余数R是1100。
3 )用x^rM(x)系数对应的位串,减(模2减法)去余数R,结果就是完成CRC编码的帧。 故得到CRC编码为10110110000减(模2减法)去余数R1100,最终结果为10110111100。


Top