该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
clear all
N = 20;
datastream=[1:1:N];
for i=1:1:N
msg(i)=mod(datastream(i),2);
end
%crc = zeros(1,32);
%mseg=[msg zeros(1,32)];
crcregister =ones(1,32);
l_all = length(msg);
%crcout = zeros(1,l_all);
for m = 1:1:l_all;
% crcout(1,m) = msg(1,m);
feedback = mod((msg(1,m)+crcregister(1,32)),2);
crcregister(1,1)=mod((feedback+crcregister(1,1)),2);
crcregister(1,2)=mod((feedback+crcregister(1,2)),2);
crcregister(1,4)=mod((feedback+crcregister(1,4)),2);
crcregister(1,5)=mod((feedback+crcregister(1,5)),2);
crcregister(1,7)=mod((feedback+crcregister(1,7)),2);
crcregister(1,8)=mod((feedback+crcregister(1,8)),2);
crcregister(1,10)=mod((feedback+crcregister(1,10)),2);
crcregister(1,11)=mod((feedback+crcregister(1,11)),2);
crcregister(1,12)=mod((feedback+crcregister(1,12)),2);
crcregister(1,16)=mod((feedback+crcregister(1,16)),2);
crcregister(1,22)=mod((feedback+crcregister(1,22)),2);
crcregister(1,23)=mod((feedback+crcregister(1,23)),2);
crcregister(1,26)=mod((feedback+crcregister(1,26)),2);
% feedback = mod((msg(1,m)+crcregister(1,32)),2);
crcregister=[feedback crcregister(1,1:31)];
end
我认为crcregister中最后的状态应该是通信中CRC32校验码(根据原理和生成多项式),可是实际结果不对,请这方面的达人指点迷津,谢谢!