📄 ch7example23prog1.m
字号:
% ch7example23prog1.m
clear;
reg=ones(1,6); % 寄存器初始状态:全1,寄存器级数为6
coeff=[1,0,0,0,0,1,1]; % 抽头系数cr ...c1 c0,取决于特征多项式
N=2^length(reg)-1; % 周期
for k=1:N % 计算一个周期的m序列输出
a_n=mod(sum(reg.*coeff(1:length(coeff)-1)),2);% 反馈
reg=[reg(2:length(reg)),a_n]; % 寄存器移位,反馈
out1(k)=2*reg(1)-1; % 寄存器最低位输出,转换为双极性序列
end
reg=ones(1,6);
coeff=[1,1,0,0,1,1,1];% 抽头系数
for k=1:N % 计算一个周期的m序列输出
a_n=mod(sum(reg.*coeff(1:length(coeff)-1)),2);% 反馈
reg=[reg(2:length(reg)),a_n]; % 寄存器移位,反馈
out2(k)=2*reg(1)-1; % 寄存器最低位输出,转换为双极性序列
end
% 得出两个双极性电平的m序列
for j=0:N-1
R(j+1)=sum(out1.*[out2(1+j : N),out2(1:j)]); % 计算相关函数
end
j=-N+1:N-1;% 相关函数自变量
R=[fliplr(R(2:N)),R];% 利用相关函数的偶函数特性计算j为负值的情况
plot(j, R);axis([-N N -20 20]);xlabel('j');ylabel('R(j)');% 作图
max(abs(R)) % 计算相关函数绝对值的最大值
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -