我是靠谱客的博主 勤恳硬币,最近开发中收集的这篇文章主要介绍matlab 产生伪随机序列,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

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 产生伪随机序列所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(74)

评论列表共有 0 条评论

立即
投稿
返回
顶部