如何实现这个MATLAB 程序?
这个程序有四个数要进行计算,U[A,B,C,D].A是现在时刻的采样值,B,C和D是前三次的采样值,然后用这四个数进行一系列运算。运算结束后再进行采样,然后将这一时刻的采...
这个程序有四个数要进行计算,U[A,B,C,D].A是现在时刻的采样值,B,C和D是前三次的采样值,然后用这四个数进行一系列运算。运算结束后再进行采样,然后将这一时刻的采样值赋给A,将上次循环时的A值赋给这次循环的B值,上一次循环的B值赋给这次循环的C值,将上次循环的C值赋给这次循环的D值。而上次的循环的的D值就被‘挤掉’不用了。每次都是新采样一个只,然后将最早的那个采样值’挤掉‘,请问这种情况该如何实现呢?
展开
1个回答
展开全部
这不就是一个FIR滤波器吗
给你写一段程序吧 完全按照你的描述来写一个
clear;
clc;
A=0;
B=0;
C=0;
D=0;
mem=[A B C D];
S=[1 0 1 0 0 1 1 0 0 0];
N=length(S);
for i=1:N
mem
A=mem(1);
B=mem(2);
C=mem(3);
D=mem(4);
input=S(i);
out(i)=input+A+B+C+D; % 你自己随便改
mem=[input mem(1:end-1)];
end
out
给你写一段程序吧 完全按照你的描述来写一个
clear;
clc;
A=0;
B=0;
C=0;
D=0;
mem=[A B C D];
S=[1 0 1 0 0 1 1 0 0 0];
N=length(S);
for i=1:N
mem
A=mem(1);
B=mem(2);
C=mem(3);
D=mem(4);
input=S(i);
out(i)=input+A+B+C+D; % 你自己随便改
mem=[input mem(1:end-1)];
end
out
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询