gusucode.com > matlab通信工程仿真源码(张德丰等编著)程序书籍 > matlab_code/matlab通信工程仿真源码(张德丰等编著)/第10章/PNGen.m

    function [y, Z] = PNGen(G, Zin, N); 
% 此函数是根据生成多项式和输入状态产生长度为N的伪随机序列 
% G为生成多项式
% Zin为移位寄存器初始化 
% N为PN序列长度
% y为生成的PN码序列 
% Z为移位寄存器的输出状态
L = length(G); Z = Zin;    % 移位寄存器的初始化  
y = zeros(N, 1); 
for i=1:N 
   y(i) = Z(L); 
   Z = xor(G*Z(L), Z); 
   Z = [Z(L); Z(1:L-1)]; 
end