作业帮 > 综合 > 作业

function cod=codec(m,g1,g2) %g1,g2为两输出端口的冲激响应序列.

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/10/04 13:57:21
function cod=codec(m,g1,g2) %g1,g2为两输出端口的冲激响应序列.
m1=conv(m,g1); %端口一输出
m2=conv(m,g2); %端口二输出
l=length(m1);
for i=1:l;
cod([2*i-1])=rem(m1([i]),2); %将端口一编码输出赋给cod奇数位置
cod([2*i])=rem(m2([i]),2); %将端口二编码输出赋给cod偶数位置
end
clear all
g1=[1 1 1];
g2=[1 0 1];
msg=[1 1 0 1];
cod=codec(msg,g1,g2)
老出现
Input argument "m" is undefined.
Error in ==> codec at 2
m1=conv(m,g1); %端口一输出
怎么解决
就是m 的问题,你还定义 它了,但是运行时你没把它输入
再问: 我应该怎么改正大神,我是小白多多指教
再答: 首先你留下你刚写的代码 function cod=codec(m,g1,g2) %g1,g2为两输出端口的冲激响应序列。 m1=conv(m,g1); %端口一输出 m2=conv(m,g2); %端口二输出 l=length(m1); for i=1:l; cod([2*i-1])=rem(m1([i]),2); %将端口一编码输出赋给cod奇数位置 cod([2*i])=rem(m2([i]),2); %将端口二编码输出赋给cod偶数位置 end 然后加m 的值, 就好啦 我哪一个来例如 clear all m=3; g1=[1 1 1]; g2=[1 0 1]; msg=[1 1 0 1]; cod=codec(msg,g1,g2); m1=conv(m,g1) m1 = 3 3 3 希望会帮你