循环码
一 码多项式
一个 n 比特的向量也可以用多项式来表达:
(1)
如同 z 变换,其中 表示第 i 个位置(从 c 的右边从零数起), 是第 i 比特的值。如果 c 中第 i 比特
是 1,再往左都是零,则称 为 i 次多项式。n 比特向量对应的多项式的次数最高是。比如:1001 对应一
个 3 次多项式 ,0101 对应 2 次多项式。
注意:把比特向量对应到多项式时,有左右顺序的问题。这个问题并无实质差别,只要约定清楚就行。
我们缺省假设向量中的比特从左到右对应多项式从高到低的系数。也就是说,除非另有说明,我们将 1011
的 多 项 式写成 或 者 , 而 不 是 或 者。有些 书 上 的 写 法 是 , 对 应 多 项 式
。此写法()中,最高位(MSB)在右,LSB 在左。我们的写法是。
无论是哪种写法, 总表示从 LSB 数起的第 i 个位置(01 )。
二进制情况下,次数不超过 的多项式 总共有个。
如同整系数多项式、实系数多项式,我们称(1)中这个多项式为系数在 GF(2)上的多项式。
多项式的运算
和我们熟悉的整系数多项式或实系数多项式一样,只不过系数的运算是在 GF(2)上。
多项式乘法:()
多项式除法: ,即商式为 ,余式为
。
模运算:多项式的模运算和整数模相似。如 。
带余除法定理:同整数情形。用 去除 得商 ,得余 ,则有
其中的次数加 的次数等于 的次数, 的次数一定小于 的次数。
模同余或模等价:用 去除和 ,若余式相同则称 和模等价,记为
或者记为
移位与循环移位
移位就是把码组左移 p 位(左移是超着 MSB 方向移动,如果习惯把 MSB 写在右边,则左右是反的)。移位
实际就是把多项式 中的各个 x 的指数统一加 p,也就是。移位后的比特位置的编号有可能超出 n,
即多项式的次数可能超过 n-1。
循环移位就是码组左移 p 位,若有移出的比特则从右边环回。它等价于多项式中 x 的指数统一加 p 后模 n。