Seguramente alguna vez has usado o descargado un archivo zip... Se trata de archivos que usan un sistema de COMPRESION de DATOS con el proposito de reducir el tamaño del archivo, para que sea mas facil y rapido, ya sea mandarlo por correo electronico o descargarlo del Internet.
Existen varios tipos de archivos de compresion de datos, como por ejemplo: zip, rar, ace, 7zip, cab, etc...
De la misma forma, existen varios programas para 'descomprimir' dichos formatos, tales como WINRAR, WINZIP y 7-ZIP.
Sin embargo, todos usan mas o menos el mismo principio de funcionamiento: la tecnologia de compresion de archivos busca 'patrones de repeticion' en el contenido binario de un archivo y usa un 'diccionario' con un indice para suplantar las 'palabras' por el numero de entrada en dicho 'indice'. Por ejemplo, echenle un vistazo a la siguiente frase:
"Pablito clavo un clavito, que clavito clavo Pablito?"
Rapidamente notaremos que varias palabras estan repetidas, correcto?
Por lo tanto podemos crear un diccionario conteniendo unicamente las palabras repetidas, creando por lo tanto el siguiente indice:
1 Pablito
2 clavo
3 clavito
Entonces, la frase podria ser representada de la siguiente forma:
"1 2 un 3, que 3 2 1?"
Ahora les pregunto, que ocupa menos espacio? Pablito clavo un clavito, que clavito clavo Pablito? o 1 2 un 3, que 3 2 1?
Analizemos ambas frases asignandole a cada letra o espacio un byte...
Pero existe un problema...el diccionario para poder 'descomprimir' dicho archivo tiene que estar INCLUIDO en el mismo archivo! En nuestro caso, el pequeño diccionario de 3 palabras ocupa 22 bytes. Por lo tanto al archivo zip comprimido de 1 2 un 3, que 3 2 1? tenemos que sumarle 22 bytes que ocupa el diccionario, teniendo un total de 42 bytes... Aun asi sigue siendo mas chico que el archivo de Pablito clavo un clavito, que clavito clavo Pablito? de 52 bytes!
Es por este motivo que los archivos de compresion de datos funcionan mejor cuanto mas grande sea el archivo original que deseamos comprimir, pues la probabilidad de que existan mas palabras o patrones repetidos AUMENTA exponencialmente cuanto mayor sea el archivo en cuestion.
Existen varios tipos de archivos de compresion de datos, como por ejemplo: zip, rar, ace, 7zip, cab, etc...
De la misma forma, existen varios programas para 'descomprimir' dichos formatos, tales como WINRAR, WINZIP y 7-ZIP.
Sin embargo, todos usan mas o menos el mismo principio de funcionamiento: la tecnologia de compresion de archivos busca 'patrones de repeticion' en el contenido binario de un archivo y usa un 'diccionario' con un indice para suplantar las 'palabras' por el numero de entrada en dicho 'indice'. Por ejemplo, echenle un vistazo a la siguiente frase:
"Pablito clavo un clavito, que clavito clavo Pablito?"
Rapidamente notaremos que varias palabras estan repetidas, correcto?
Por lo tanto podemos crear un diccionario conteniendo unicamente las palabras repetidas, creando por lo tanto el siguiente indice:
1 Pablito
2 clavo
3 clavito
Entonces, la frase podria ser representada de la siguiente forma:
"1 2 un 3, que 3 2 1?"
Ahora les pregunto, que ocupa menos espacio? Pablito clavo un clavito, que clavito clavo Pablito? o 1 2 un 3, que 3 2 1?
Analizemos ambas frases asignandole a cada letra o espacio un byte...
Pablito clavo un clavito, que clavito clavo Pablito? ocupa 52 bytes...
1 2 un 3, que 3 2 1? ocupa 20 bytes! 32 byte menos!
Pero existe un problema...el diccionario para poder 'descomprimir' dicho archivo tiene que estar INCLUIDO en el mismo archivo! En nuestro caso, el pequeño diccionario de 3 palabras ocupa 22 bytes. Por lo tanto al archivo zip comprimido de 1 2 un 3, que 3 2 1? tenemos que sumarle 22 bytes que ocupa el diccionario, teniendo un total de 42 bytes... Aun asi sigue siendo mas chico que el archivo de Pablito clavo un clavito, que clavito clavo Pablito? de 52 bytes!
Es por este motivo que los archivos de compresion de datos funcionan mejor cuanto mas grande sea el archivo original que deseamos comprimir, pues la probabilidad de que existan mas palabras o patrones repetidos AUMENTA exponencialmente cuanto mayor sea el archivo en cuestion.
Comentarios
Publicar un comentario