?? mseq64.asv
字號:
function a=mseq64(seq)
%%%%%%產生M序列%%%%%
%registers=ones(1,12);%將移位寄存器的初值都設置為1
%seq(1)=registers(1);%第一個寄存器的值做為序列的第一個值
%for i=2:(6*N) %產生的m序列長度為20000,其中一個周期為4095個點
% t=xor(xor(registers(1),registers(7)),xor(registers(9),registers(12)));
% for j=1:11
% registers(j)=registers(j+1);
%end;
%registers(12)=t;
%seq(i)=registers(1);
%end;
for i=1:N %將產生的m序列的前400個點轉換成星座圖
switch 1
case seq(6*(i-1)+6)==0&seq(6*(i-1)+4)==0&seq(6*(i-1)+2)==0
ci(i)=7;
case seq(6*(i-1)+6)==0&seq(6*(i-1)+4)==0&seq(6*(i-1)+2)==1
ci(i)=5;
case seq(6*(i-1)+6)==0&seq(6*(i-1)+4)==1&seq(6*(i-1)+2)==1
ci(i)=3;
case seq(6*(i-1)+6)==0&seq(6*(i-1)+4)==1&seq(6*(i-1)+2)==0
ci(i)=1;
case seq(6*(i-1)+6)==1&seq(6*(i-1)+4)==1&seq(6*(i-1)+2)==0
ci(i)=-1;
case seq(6*(i-1)+6)==1&seq(6*(i-1)+4)==1&seq(6*(i-1)+2)==1
ci(i)=-3;
case seq(6*(i-1)+6)==1&seq(6*(i-1)+4)==0&seq(6*(i-1)+2)==1
ci(i)=-5;
case seq(6*(i-1)+6)==1&seq(6*(i-1)+4)==0&seq(6*(i-1)+2)==0
ci(i)=-7;
end
switch 1
case seq(6*(i-1)+5)==0&seq(6*(i-1)+3)==0&seq(6*(i-1)+1)==0
cq(i)=7;
case seq(6*(i-1)+5)==0&seq(6*(i-1)+3)==0&seq(6*(i-1)+1)==1
cq(i)=5;
case seq(6*(i-1)+5)==0&seq(6*(i-1)+3)==1&seq(6*(i-1)+1)==1
cq(i)=3;
case seq(6*(i-1)+5)==0&seq(6*(i-1)+3)==1&seq(6*(i-1)+1)==0
cq(i)=1;
case seq(6*(i-1)+5)==1&seq(6*(i-1)+3)==1&seq(6*(i-1)+1)==0
cq(i)=-1;
case seq(6*(i-1)+5)==1&seq(6*(i-1)+3)==1&seq(6*(i-1)+1)==1
cq(i)=-3;
case seq(6*(i-1)+5)==1&seq(6*(i-1)+3)==0&seq(6*(i-1)+1)==1
cq(i)=-5;
case seq(6*(i-1)+5)==1&seq(6*(i-1)+3)==0&seq(6*(i-1)+1)==0
cq(i)=-7;
end
end
j=sqrt(-1);
a=[0 0 0 0 0 0];
a=ci+j*cq;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -