Observa el numero de bits 1 de los caracteres para enviarlos de forma par ( paridad par) o de forma impar ( paridad impar).
- Código de paridad par:
- El bit de paridad será un 0 si el número total de 1 a transmitir es par, y un 1 si el número total de 1 es impar.
- Código de paridad impar:
- El bit de paridad será un 1 si el número total de 1 a transmitir es par y un 0 si el número total de 1 es impar.
Ejemplo: Tenemos el carácter original 0111001. Vemos que el carácter a transmitir tiene un número par de unos (4). Al añadir el bit de paridad obtendremos el siguiente carácter, que es el que se transmitirá a destino:
- Si usamos paridad par, ya hay un número par de unos, por tanto se añade un 0, y transmitiremos 00111001
- Si usamos paridad impar, como hay un número par de unos, hemos de añadir otro 1 para conseguir un número impar, y transmitiremos 10111001
Ejemplo:
- Paridad par: se recibe 00110101 en vez de 00111001. Al comprobar el número de unos nos salen 4 (par), y no detecta los errores.
- Paridad impar, se recibe 10110101 en vez de 10111001. Al comprobar el número de unos nos salen 5 (impar), y no detecta los errores.
Paridad de bloque:
Lo que hace este método es encargarse de agrupar los carácteres a transmitir en bloques de n bits( si es ASCII recordemos que son 7) y formar una matriz con la que se calculara una paridad vertical y otra horizontal, siguiendo alguna de las paridades anteriores( paridad par o impar).
Miremos el siguiente ejemplo y analizaremos el funcionamiento:
| Paridad Vertical | Bit1 | Bit2 | Bit3 | Bit4 | Bit5 | Bit6 | Bit7 | Bit8 | |
| 0 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | |
| 1 | 1 | 0 | 1 | 1 | 1 | 0 | 0 | 1 | |
| 0 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | |
| 1 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | |
| 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 1 | |
| 1 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | |
| 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | Paridad Horizontal |
Antes de nada decir que las columnas de la paridad se pueden poner a ambos lados a pesar de que en nuestro libro aparece al otro lado ,xro weno... esta imagen la e tomado de internet.
Seguiremos un modelo de paridad par y lo hacemos vertical y horizontalmente como obsevams en la imagen los 1 y 0 que aparecen en amarillo.
Como observamos en la paridad horizontal nos a salido otro nuevo caracter de 8 bits en este caso que se envirara con el resto de caracteres, a este caracter nuevo que a salido de la paridad horizontal se le llama ( checksum o chequeo ) , y los de la paridad vertical se mandaran antes del envio de cada caracter, es decir, los bits que nos han salido de la paridad vertical los enviarems uno a uno antes del caracter al que corresponde y los de la paridad horizontal los mandaremos como un caracter más.
Como podemos ver si un carácter llega con dos bits alterados erroneamente, a diferencia de la paridad simple(es lo que hemos visto al principio de par e impar que solo se mirarban los 1 y se ponia un 1 o un 0 correspondiente) el receptor los detecta al realizar la prueba de paridad en bloque y puede incluso hasta corregirlos.
Puede incluso detectar los errores triples.
CONTROL DE REDUNDANCIA CÍCLICA ( CRC):
Los códigos cíclicos también se llaman CRC (Códigos de Redundancia Cíclica) o códigos polinómicos. Su uso está muy extendido porque pueden implementarse en hardware con mucha facilidad y son muy potentes.
Suelen salir sobre todo cuando introducimos datos en el ordenador, frecuentemente cuando es desde un disco( instalando un programa, un juego, etc...) aunque tambien pueden salir por otras razones , como por ejemplo como decia Mariola , al grabar un disco.
Estos códigos se basan en el uso de un polinomio generador G(X) de grado r, y en el principio de que n bits de datos binarios se pueden considerar como los coeficientes de un polinomio de orden n-1.
Por ejemplo, los datos 10111 pueden tratarse como el polinomio x4 + x2 + x1 + x0
A estos bits de datos se le añaden r bits de redundancia de forma que el polinomio resultante sea divisible entre el polinomio generador.
El receptor verificara si el polinomio recibido es divisible por el polinomio generados. Si no lo es, habrá un error de transmision.
Los bits de datos se dividen en bloques,y a cada bloque se le calcula r, que se denomina secuencia de comprobación de bloque(FCS).
CRC-12: x12 + x11 + x3 + x2 + x1 + 1. Usado para transmitir flujos de 6 bits, junto a otros 12 de redundancia. Es decir, usa bloques de 6 bits, a los que les une un FCS que genera de 12 bits.
CRC-16: x16 + x15 + x2 + 1. Para flujos de 8 bits, con 16 de redundancia. Usado en Estados Unidos.
CRC-CCITT: x16 + x12 + x5 + 1. Para flujos de 8 bits, con 16 de redundancia. Usado en Europa.
CRC-32: x32 + x26 + x23 + x22 + x16 + x12 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x + 1. Da una protección extra sobre la que dan los CRC de 16 bits, que suelen dar la suficiente. Se emplea por el comité de estándares de redes locales (IEEE-802) y en algunas aplicaciones del Departamento de Defensa de Estados Unidos.
ESPERO QUE OS SIRVA COMO RESUMEN Y SE ENTIENDA
3 comentarios:
mi má!!!
no me entero de nada jajaja
bueno bueno esto para los informaticos y d+...
sta bien la pag esta de utilidades eehhh jejjeej
passsalo bien x ahi
y recuerdos a tu novia ;P
adddddeuuu
¬¬
no ha salido el nombre entero
jaldjflaskdjfkdsjfkjdsñkfjdsañlkjf!!!
weno da = xq tu sabes q era mio jjjjj
passsalo biennnnn
aadeeeuuu
Bueno Ar, me imagino que cuando leas esto es que ya estaras en casita y te habras repuesto de la movida esa que te has cogido. En fin, espero que sea cuanto antes. Un abrazo campeon.
Publicar un comentario