概述
function y=signalgenenator(oct_coe)
% oct_coe=23;%将g(x)改成八进制的给进去
coe_alg=de2bi(oct2dec(oct_coe));%
sta_con=coe_alg(end:-1:2);%反馈的连 接状态向量,舍去输出的反馈链接
position=find(sta_con==1);%%得到抽头 位置
order=length(sta_con);%寄存器阶数
period=2^order-1;
reg=ones(1,order);%寄存器赋初值
tem=xor(reg(position(1)),reg(position (2)));
mSequence=[];
for i=3:length(position)
tem=xor(reg(position(i)),tem);% 循环异或抽头有效的寄存器值
end
for j=1:period;%m 序列的周期
for k=2:order;
reg(k-1)=reg(k);
end
reg(order)=tem;
tem=xor(reg(position(1)),reg (position(2)));
for v=3:length(position)
tem=xor(reg(position(v)),tem);
end
mSequence(j)=tem;% 将每次循环异 或后的值作为 m 序列的输出 end mSequence
end
y= mSequence;
根据给的g(x)不同输出不同的m序列
最后
以上就是勤恳硬币为你收集整理的matlab 产生伪随机序列的全部内容,希望文章能够帮你解决matlab 产生伪随机序列所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复