Está en la página 1de 2

MATLAB Command Window Page 1

>> %Escribiendo los datos de entrada


>> dat = [1 1 0 1 0 0 1 1 1 0 1 1 0 0];
>> %Escribiendo el polinomio divisor (x^4 + x + 1)
>> p = [1 0 0 1 1];
>> %Usando la función para codificar
>> [d,r] = crccod(dat, p);
>> %Usando la funciona para decodificar
>> [s,rd]=crcdecod(d,p);
>> %Validando que 'dat' (datos de entrada) y 's' (datos recuperados) sean iguales
>> dat

dat =

1 1 0 1 0 0 1 1 1 0 1 1 0 0

>> s

s =

1 1 0 1 0 0 1 1 1 0 1 1 0 0

>> %Verificando el residuo de salida, donde sí es diferente de 0, significa que hay error
>> rd

rd =

1×4 logical array

0 0 0 0

>> %Como se observa, no hay error. Ahora, cambiando el valor de el 2do bit para generar
un error en los datos que recibe el decoder
>> d(2)=not(d(2));
>> %Volviendo a decodificar
>> [s,rd]=crcdecod(d,p);
>> %Comparando 'dat' con 's' y mirando el residuo 'rd'
>> dat

dat =

1 1 0 1 0 0 1 1 1 0 1 1 0 0

>> s

s =

1 0 0 1 0 0 1 1 1 0 1 1 0 0

>> rd

rd =
MATLAB Command Window Page 2

1×4 logical array

0 0 1 0

>> %Se observa que hay error ya que 'rd' es distinto de 0

También podría gustarte