La compresión y descompresión de archivos es algo muy rutinario en el uso habitual de los ordenadores. Ya sea para almacenar mayor cantidad de datos en menor espacio o para hacer que archivos multimedia (audio, vídeo, imagen) ocupen menos espacio para poderlos subir a las redes, etc., siempre se utilizan diversos programas de des/compresión. Pero… ¿realmente sabes cómo funcionan? Vamos a verlo.
Índice de contenidos
La compresión y descompresión de archivos son técnicas utilizadas para reducir el tamaño de un archivo o conjunto de archivos, con el objetivo de ahorrar espacio en el almacenamiento y facilitar la transferencia de datos a través de internet u otros medios.
La compresión y descompresión de archivos son muy útiles para ahorrar espacio en el disco duro o en la memoria de dispositivos, así como para acelerar la transferencia de archivos por internet o a través de medios de almacenamiento externos. Los formatos de archivo comprimido más comunes son ZIP, RAR y 7z, entre otros, y hay numerosos programas de compresión y descompresión disponibles para realizar estas tareas de manera sencilla y eficiente.
También te puede interesar conocer cuáles son los mejores discos duros SSD y HDD del mercado, para que no tengas problemas de espacio de almacenamiento.
Hay dos tipos principales de compresión de archivos: la compresión sin pérdida y la compresión con pérdida, que se emplean para describir los diversos enfoques y algoritmos utilizados en el proceso de compresión. A continuación, se describen brevemente ambos tipos:
Es esencial tener en cuenta que la elección entre compresión sin pérdida y compresión con pérdida dependerá del tipo de archivo y del equilibrio que se busque entre el tamaño del archivo y la calidad deseada. La compresión sin pérdida es preferible cuando se requiere una reproducción exacta, mientras que la compresión con pérdida resulta más adecuada para reducir el tamaño de archivos multimedia, aunque a expensas de cierta calidad.
Un algoritmo de compresión es un conjunto de reglas y procedimientos matemáticos que se utilizan para reducir el tamaño de un archivo o conjunto de datos de manera eficiente. El objetivo principal de un algoritmo de compresión es eliminar redundancias y patrones innecesarios en los datos para que ocupen menos espacio en el almacenamiento y se puedan transmitir o procesar más rápidamente.
Los algoritmos de compresión pueden variar en complejidad y enfoque, y hay diferentes técnicas y métodos para lograr la compresión eficiente de distintos tipos de datos. Algunos ejemplos de algoritmos de compresión conocidos son:
También te puede interesar leer nuestra guía sobre los tipos de archivos
Explicar la compresión y descompresión con los métodos y algoritmos actuales es complicado. Pero vamos atrás y vamos a ver ejemplos muy simples de cómo se comprimiría algo para que así captes el concepto y lo comprendas. Por ejemplo, imagina que tienes un archivo de texto que quieres comprimir y que contiene este texto:
Los árboles, majestuosas maravillas de la naturaleza, desempeñan un papel vital en el equilibrio ecológico de nuestro planeta. Con sus robustos troncos, extensas ramas y frondosas copas, ofrecen refugio y alimento a innumerables especies de animales y aves. Su proceso de fotosíntesis captura dióxido de carbono y libera oxígeno, contribuyendo así a purificar el aire que respiramos. Además, su sistema de raíces ayuda a prevenir la erosión del suelo y mantiene los cursos de agua. Desde tiempos ancestrales, los árboles han sido fuente de recursos para la humanidad, proporcionando madera, alimentos y medicinas. Admirados por su belleza y valor ecológico, los árboles nos recuerdan la importancia de proteger y preservar la biodiversidad que la naturaleza nos brinda generosamente.
Este texto contiene algunas redundancias, concretamente se repiten las siguientes palabras:
Con la compresión lo que se haría sería tratar de eliminar esas repeticiones y solo ponerlas una sola vez, con indicaciones de dónde estarían situadas esas palabras repetidas para que en el momento de la compresión se pueda volver a restablecer el texto original. Por ejemplo, este otro texto ocuparía menos bytes que el primero, al tener menos caracteres que almacenar:
Los X, majestuosas maravillas de la Y, desempeñan un papel vital en el equilibrio ecológico de nuestro planeta. Con sus robustos troncos, extensas ramas y frondosas copas, ofrecen refugio y alimento a innumerables especies de animales y aves. Su proceso de fotosíntesis captura dióxido de carbono y libera oxígeno, contribuyendo así a purificar el aire que respiramos. Además, su sistema de raíces ayuda a prevenir la erosión del suelo y mantiene los cursos de agua. Desde tiempos ancestrales, los X han sido fuente de recursos para la humanidad, proporcionando madera, alimentos y medicinas. Admirados por su belleza y valor ecológico, los X nos recuerdan la importancia de proteger y preservar la biodiversidad que la Y nos brinda generosamente.
Donde:
X es un caracter ASCII que ocupa 8 bits o 1 byte, mientras que árboles es una palabra compuesta por 7 caracteres ASCII, lo que sería 7 bytes. Lo mismo ocurre con Y, que es solo 1 byte, mientras que naturaleza es 10 bytes. Por tanto, con esto hemos conseguido reducir bastantes bytes el archivo de texto inicial. Evidentemente, esto no funciona del todo así en la práctica, pero es para que puedas comprenderlo.
En otro tipo de archivos, el procedimiento sería parecido, como por ejemplo:
No olvides comentar…
Las tarjetas gráficas GeForce RTX 5090 y RTX 5080 de Nvidia ya se encuentran listados…
Nvidia GeForce RTX 5090 ha sido sometido a algunas pruebas de rendimiento antes de su…
Las tarjetas gráficas RTX 5090 y RTX 5080 de Nvidia no cuentan con aumentos sustanciales…