📄 shousuo.m
字号:
%用收缩法实现有限精度数字混沌系统并优选
%*******************************************************************
N1=3000;
N=1023;
%产生第一个m序列g1_seq
connect_cof1=[1 0 1]; %移位寄存器的反馈系数
g1_seq_initiate=[1 1 1]; %移位寄存器的初始状态
temp1=g1_seq_initiate;
g1_seq_length=N1; %g1序列的长度,g1是m序列
g1_seq=[]; %初始时为空矩阵
g1_seq_leng=0;
while g1_seq_leng<g1_seq_length
connect_sum=temp1.*connect_cof1;
feedback1=mod(sum(connect_sum),2);
g1_seq=[g1_seq,temp1(length(temp1))]; %用移位寄存法产生m序列
g1_seq_leng=length(g1_seq);
temp1=[feedback1,temp1(1:(length(temp1)-1))];
end
for i=1:g1_seq_length
if g1_seq(i)==0
g1_seq(i)=-1;
else
g1_seq(i)=1;
end
end
%******************************************************************
%产生第一个混沌系统
y1=[];
col1=length(y1);
while col1<g1_seq_length
x1=1-2*x1^2;
if x1<0
y1=[y1,-1];
else
y1=[y1,1];
end
col1=length(y1);
end
%*******************************************************************
s1_seq=-(g1_seq.*y1); %异或过程,相乘取反,产生s1序列
%*******************************************************************
%产生第二个m序列g2_seq
connect_cof2=[1 0 0 1]; %移位寄存器的反馈系数
g2_seq_initiate=[1 1 1 1]; %移位寄存器的初始状态
temp2=g2_seq_initiate;
g2_seq_length=N1; %g1序列的长度,g1是m序列
g2_seq=[]; %初始时为空矩阵
g2_seq_leng=0;
while g2_seq_leng<g2_seq_length
connect_sum=temp2.*connect_cof2;
feedback2=mod(sum(connect_sum),2);
g2_seq=[g2_seq,temp2(length(temp2))]; %用移位寄存法产生m序列
g2_seq_leng=length(g2_seq);
temp2=[feedback2,temp2(1:(length(temp2)-1))];
end
for i=1:g2_seq_length %将0,1单极性序列变成+1,-1的双极性序列
if g2_seq(i)==0
g2_seq(i)=-1;
else
g2_seq(i)=1;
end
end
%***********************************************************************
%产生第二个混沌系统
y2=[];
col2=length(y2);
while col2<g2_seq_length
x2=1-2*x2^2;
if x2<0
y2=[y2,-1];
else
y2=[y2,1];
end
col2=length(y2);
end
%***********************************************************************
s2_seq=-(g2_seq.*y2); %异或过程,相乘取反,产生s2序列
%***********************************************************************
%抽取产生输出序列s
s_seq=[];
for i=1:N1
if s1_seq(i)==1
s_seq=[s_seq,s2_seq(i)];
end
end
s_seq=s_seq(1:N);
%*************************************************************************
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -