m1_96.m
来自「matlab在通信原理中的应用」· M 代码 · 共 240 行
M
240 行
function [sys]=M1_96(u);
%========================================================
% M1_96
%Esta funcion calcula el valor del MS-REI, el cual es el valor que reporta errores en la trama a nivel binario.
%========================================================
%
% AUTORES : Z. AGUI%O & D. STECKLER
% Universidad de Carabobo
% Valencia edo. Carabobo, VENEZUELA
%
% FECHA : Enero 2004
% VERSION : 1.0
%
%========================================================
% Realizado bajo MATLAB 6.5 Release 13/ Enero 2004 (DZ)
%========================================================
%
%Variables de Inicializacion
[a b]=size(u);
w=zeros(a,8);
%Ciclo recuperador de B2rec y B2calc
i=(1:a);
x=u(i,1:96);
y=u(i,97:192);
%Ciclo para verificar y/o comparar cada bit de cada uno de los bytes
%B2calc y B2orig en SDH.
for i=1:a
malo(i,1)=0;
for p=1:96
if x(i,p)~=y(i,p)
malo(i,1)=malo(i,1)+1;
end
end
end
%Ciclo de Verificacion
for i=1:a
if malo(i,1)==0
w(i,1:8)=[0 0 0 0 0 0 0 0];
elseif malo(i,1)==1
w(i,1:8)=[0 0 0 0 0 0 0 1];
elseif malo(i,1)==2
w(i,1:8)=[0 0 0 0 0 0 1 0];
elseif malo(i,1)==3
w(i,1:8)=[0 0 0 0 0 0 1 1];
elseif malo(i,1)==4
w(i,1:8)=[0 0 0 0 0 1 0 0];
elseif malo(i,1)==5
w(i,1:8)=[0 0 0 0 0 1 0 1];
elseif malo(i,1)==6
w(i,1:8)=[0 0 0 0 0 1 1 0];
elseif malo(i,1)==7
w(i,1:8)=[0 0 0 0 0 1 1 1];
elseif malo(i,1)==8
w(i,1:8)=[0 0 0 0 1 0 0 0];
elseif malo(i,1)==9
w(i,1:8)=[0 0 0 0 1 0 0 1];
elseif malo(i,1)==10
w(i,1:8)=[0 0 0 0 1 0 1 0];
elseif malo(i,1)==11
w(i,1:8)=[0 0 0 0 1 0 1 1];
elseif malo(i,1)==12
w(i,1:8)=[0 0 0 0 1 1 0 0];
elseif malo(i,1)==13
w(i,1:8)=[0 0 0 0 1 1 0 1];
elseif malo(i,1)==14
w(i,1:8)=[0 0 0 0 1 1 1 0];
elseif malo(i,1)==15
w(i,1:8)=[0 0 0 0 1 1 1 1];
elseif malo(i,1)==16
w(i,1:8)=[0 0 0 1 0 0 0 0];
elseif malo(i,1)==17
w(i,1:8)=[0 0 0 1 0 0 0 1];
elseif malo(i,1)==18
w(i,1:8)=[0 0 0 1 0 0 1 0];
elseif malo(i,1)==19
w(i,1:8)=[0 0 0 1 0 0 1 1];
elseif malo(i,1)==20
w(i,1:8)=[0 0 0 1 0 1 0 0];
elseif malo(i,1)==21
w(i,1:8)=[0 0 0 1 0 1 0 1];
elseif malo(i,1)==22
w(i,1:8)=[0 0 0 1 0 1 1 0];
elseif malo(i,1)==23
w(i,1:8)=[0 0 0 1 0 1 1 1];
elseif malo(i,1)==24
w(i,1:8)=[0 0 0 1 1 0 0 0];
elseif malo(i,1)==25
w(i,1:8)=[0 0 0 1 1 0 0 1];
elseif malo(i,1)==26
w(i,1:8)=[0 0 0 1 1 0 1 0];
elseif malo(i,1)==27
w(i,1:8)=[0 0 0 1 1 0 1 1];
elseif malo(i,1)==28
w(i,1:8)=[0 0 0 1 1 1 0 0];
elseif malo(i,1)==29
w(i,1:8)=[0 0 0 1 1 1 0 1];
elseif malo(i,1)==30
w(i,1:8)=[0 0 0 1 1 1 1 0];
elseif malo(i,1)==31
w(i,1:8)=[0 0 0 1 1 1 1 1];
elseif malo(i,1)==32
w(i,1:8)=[0 0 1 0 0 0 0 0];
elseif malo(i,1)==33
w(i,1:8)=[0 0 1 0 0 0 0 1];
elseif malo(i,1)==34
w(i,1:8)=[0 0 1 0 0 0 1 0];
elseif malo(i,1)==35
w(i,1:8)=[0 0 1 0 0 0 1 1];
elseif malo(i,1)==36
w(i,1:8)=[0 0 1 0 0 1 0 0];
elseif malo(i,1)==37
w(i,1:8)=[0 0 1 0 0 1 0 1];
elseif malo(i,1)==38
w(i,1:8)=[0 0 1 0 0 1 1 0];
elseif malo(i,1)==39
w(i,1:8)=[0 0 1 0 0 1 1 1];
elseif malo(i,1)==40
w(i,1:8)=[0 0 1 0 1 0 0 0];
elseif malo(i,1)==41
w(i,1:8)=[0 0 1 0 1 0 0 1];
elseif malo(i,1)==42
w(i,1:8)=[0 0 1 0 1 0 1 0];
elseif malo(i,1)==43
w(i,1:8)=[0 0 1 0 1 0 1 1];
elseif malo(i,1)==44
w(i,1:8)=[0 0 1 0 1 1 0 0];
elseif malo(i,1)==45
w(i,1:8)=[0 0 1 0 1 1 0 1];
elseif malo(i,1)==46
w(i,1:8)=[0 0 1 0 1 1 1 0];
elseif malo(i,1)==47
w(i,1:8)=[0 0 1 0 1 1 1 1];
elseif malo(i,1)==48
w(i,1:8)=[0 0 1 1 0 0 0 0];
elseif malo(i,1)==49
w(i,1:8)=[0 0 1 1 0 0 0 1];
elseif malo(i,1)==50
w(i,1:8)=[0 0 1 1 0 0 1 0];
elseif malo(i,1)==51
w(i,1:8)=[0 0 1 1 0 0 1 1];
elseif malo(i,1)==52
w(i,1:8)=[0 0 1 1 0 1 0 0];
elseif malo(i,1)==53
w(i,1:8)=[0 0 1 1 0 1 0 1];
elseif malo(i,1)==54
w(i,1:8)=[0 0 1 1 0 1 1 0];
elseif malo(i,1)==55
w(i,1:8)=[0 0 1 1 0 1 1 1];
elseif malo(i,1)==56
w(i,1:8)=[0 0 1 1 1 0 0 0];
elseif malo(i,1)==57
w(i,1:8)=[0 0 1 1 1 0 0 1];
elseif malo(i,1)==58
w(i,1:8)=[0 0 1 1 1 0 1 0];
elseif malo(i,1)==59
w(i,1:8)=[0 0 1 1 1 0 1 1];
elseif malo(i,1)==60
w(i,1:8)=[0 0 1 1 1 1 0 0];
elseif malo(i,1)==61
w(i,1:8)=[0 0 1 1 1 1 0 1];
elseif malo(i,1)==62
w(i,1:8)=[0 0 1 1 1 1 1 0];
elseif malo(i,1)==63
w(i,1:8)=[0 0 1 1 1 1 1 1];
elseif malo(i,1)==64
w(i,1:8)=[0 1 0 0 0 0 0 0];
elseif malo(i,1)==65
w(i,1:8)=[0 1 0 0 0 0 0 1];
elseif malo(i,1)==66
w(i,1:8)=[0 1 0 0 0 0 1 0];
elseif malo(i,1)==67
w(i,1:8)=[0 1 0 0 0 0 1 1];
elseif malo(i,1)==68
w(i,1:8)=[0 1 0 0 0 1 0 0];
elseif malo(i,1)==69
w(i,1:8)=[0 1 0 0 0 1 0 1];
elseif malo(i,1)==70
w(i,1:8)=[0 1 0 0 0 1 1 0];
elseif malo(i,1)==71
w(i,1:8)=[0 1 0 0 0 1 1 1];
elseif malo(i,1)==72
w(i,1:8)=[0 1 0 0 1 0 0 0];
elseif malo(i,1)==73
w(i,1:8)=[0 1 0 0 1 0 0 1];
elseif malo(i,1)==74
w(i,1:8)=[0 1 0 0 1 0 1 0];
elseif malo(i,1)==75
w(i,1:8)=[0 1 0 0 1 0 1 1];
elseif malo(i,1)==76
w(i,1:8)=[0 1 0 0 1 1 0 0];
elseif malo(i,1)==77
w(i,1:8)=[0 1 0 0 1 1 0 1];
elseif malo(i,1)==78
w(i,1:8)=[0 1 0 0 1 1 1 0];
elseif malo(i,1)==79
w(i,1:8)=[0 1 0 0 1 1 1 1];
elseif malo(i,1)==80
w(i,1:8)=[0 1 0 1 0 0 0 0];
elseif malo(i,1)==81
w(i,1:8)=[0 1 0 1 0 0 0 1];
elseif malo(i,1)==82
w(i,1:8)=[0 1 0 1 0 0 1 0];
elseif malo(i,1)==83
w(i,1:8)=[0 1 0 1 0 0 1 1];
elseif malo(i,1)==84
w(i,1:8)=[0 1 0 1 0 1 0 0];
elseif malo(i,1)==85
w(i,1:8)=[0 1 0 1 0 1 0 1];
elseif malo(i,1)==86
w(i,1:8)=[0 1 0 1 0 1 1 0];
elseif malo(i,1)==87
w(i,1:8)=[0 1 0 1 0 1 1 1];
elseif malo(i,1)==88
w(i,1:8)=[0 1 0 1 1 0 0 0];
elseif malo(i,1)==89
w(i,1:8)=[0 1 0 1 1 0 0 1];
elseif malo(i,1)==90
w(i,1:8)=[0 1 0 1 1 0 1 0];
elseif malo(i,1)==91
w(i,1:8)=[0 1 0 1 1 0 1 1];
elseif malo(i,1)==92
w(i,1:8)=[0 1 0 1 1 1 0 0];
elseif malo(i,1)==93
w(i,1:8)=[0 1 0 1 1 1 0 1];
elseif malo(i,1)==94
w(i,1:8)=[0 1 0 1 1 1 1 0];
elseif malo(i,1)==95
w(i,1:8)=[0 1 0 1 1 1 1 1];
elseif malo(i,1)==96
w(i,1:8)=[0 1 1 0 0 0 0 0];
end
end
sys=w(:,:);
end
%[EOF] M1_96.m
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?