1. Instituto Politécnico Nacional
Introducción a los Sistemas de Comunicación Seguros
Unidad MISTI Culhuacan
Presentado a: Dr. Gualberto Aguilar Torres
Tarea
Código Detección de
errores
6
Por: Yango Alexander Colmenares
Fecha
Septiembre de 2013
% INSTITUTO POLITECNICO NACIONAL-MISTI CULHUACAN --- MEXICO DF 2013
% Estudiante: YANGO ALEXANDER COLMENARES
% Código para detección de errores
clear all
clc
texto=input('Por favor Introduzca su mensaje:n','s');
cod=double(texto);
%%%%%%%VALORES BINARIOS EN TRAMA DE 7x7 A RELACIONAR%%
for x=1:7
cociente=cod(x);
resultado=[];
while cociente > 0
resto=rem(cociente,2);
cociente=fix(cociente./2);
resultado=[resto resultado];
end;
trama(x,1:7)=resultado;
end
a=[1 1 1 1 1 1 1];
b=[1 1 1 1 1 1 1 1];
trama(1:7,8)=a;
trama(8,1:8)=b;
trama3=trama;
%%%%%%%%%%%%%%%%%%%%%PARIDAD HORIZONTAL%%%%%%%%%%%
for x=1:7
contar=0;
for y=1:7
if trama(x,y)==1
contar=contar+1;
end
2. end
paridad=mod(contar,2);
if paridad==0
trama(x,y+1)=0;
end
end
%%%%%%%%%%%%%%%%%%%PARIDAD VERTICAL%%%%%%%%%%%%%%%
for y=1:8
contar=0;
for x=1:7
if trama(x,y)==1
contar=contar+1;
end
end
paridad=mod(contar,2);
if paridad==0
trama(x+1,y)=0;
end
end
disp(trama);
trama2=trama;
n=input('nIntroduzca la cantidad de errores a introducir no mayor a
64:n');
while n>64
n=input('nLa cantidad es mayor a 64, introduzca otra cantidad: ');
end
for x=1:n
fprintf('Error #%d, introduzca coordenada del dato a cambiar
(8x8)n',x);
r=input('Renglon: ');
c=input('Columna: ');
if trama(r,c)==0
trama2(r,c)=1;
end
if trama(r,c)==1
trama2(r,c)=0;
end
end
for x=1:7
contar=0;
for y=1:7
if trama2(x,y)==1
contar=contar+1;
end
end
paridad=mod(contar,2);
if paridad~=trama(x,8)
fprintf('La trama tiene errores Horizontales)n');
break
end
end
3. for y=1:7
contar=0;
for x=1:7
if trama2(x,y)==1
contar=contar+1;
end
end
paridad=mod(contar,2);
if paridad~=trama(8,y)
fprintf('La trama tiene errores Verticalesn');
break
end
end