反馈移位寄存器 ¶
一般的,一个 n 级反馈移位寄存器如下图所示
其中
- a0,a1,…,an−1,为初态。
- F 为反馈函数或者反馈逻辑。如果 F 为线性函数,那么我们称其为线性反馈移位寄存器(LFSR),否则我们称其为非线性反馈移位寄存器(NFSR)。
- ai+n=F(ai,ai+1,...,ai+n−1) 。
一般来说,反馈移位寄存器都会定义在某个有限域上,从而避免数字太大和太小的问题。因此,我们可以将其视为同一个空间中的变换,即
(ai,ai+1,...,ai+n−1)→(ai+1,...,ai+n−1,ai+n) . 对于一个序列来说,我们一般定义其生成函数为其序列对应的幂级数的和。