怎么求循环冗余码和码字

 

太久没学了,不一定对哈,仅供参考。
首先,我们需要将生成多项式和信息码转换为二进制形式。给定的信息码为1101011011,生成多项式G(X) = x^6 + x^4 + x^2 + x + 1对应的二进制形式为10101101。

接下来,我们将使用信息码和生成多项式计算CRC校验码。计算过程如下:

在信息码后添加(r-1)个零位,其中r为生成多项式的次数。在本例中,r = 6,因此我们添加5个零:1101011011 -> 110101101100000。
使用异或操作进行除法,将扩展后的信息码与生成多项式进行除法。当遇到最高位为0时,跳过该位继续异或操作。
当剩余位数小于生成多项式长度时,停止异或操作。此时剩余的比特串即为CRC校验码。
按照以上步骤进行计算:

110101101100000
10101101
------------
 01110101100000
  10101101
 ------------
  0101001110000
   10101101
  ------------
   001110110000
    10101101
   -----------
    01010110000
     10101101
    ----------
     0110000000
      10101101
     ---------
      0011010100
       10101101
      --------
       0001101100
        10101101
       ---------
         0110100
          10101101
         --------
           1000110
            10101101
           -------
             110010

所以,循环冗余码为110010。将此校验码添加到原始信息码,得到最终的码字:1101011011110010。