Corsi on-line
Chiudi
Newsletter:
  • Seguici su Facebook
  • Seguici su Twitter
  • Seguici su Google+
  • Seguici via RSS
  • Seguici col tuo Smartphone

Comprimere file. Algoritmi e software a confronto.

Articolo scritto da Damiano Verda
Pagina 1 di 2

Tra le operazioni più comuni che possono risultare utili anche per utenti non specializzati individuiamo senz'altro la compressione. Tramite tale operazione infatti, un qualunque file presente sul nostro computer può essere ristrutturato, in modo da occupare una porzione di memoria inferiore su disco fisso. Osserviamo però che, attualmente, si hanno a disposizione hard disk molto capienti a prezzi piuttosto contenuti, dunque l'utilità dei programmi di compressione parrebbe ridursi. Si tratta però di una conclusione affrettata.

Infatti, ad esempio, può essere interessante comprimere uno o più file prima di inviarli via mail, per ridurre i tempi di ricezione e di invio. Interessante e pratica inoltre anche la possibilità di archiviare diversi documenti in un unico file compresso, più pratico da trasmettere e manipolare.

(L'articolo continua più sotto...)

Ma quali sono le principali possibilità a disposizione degli utenti per comprimere uno o più file? E cosa distingue i vari software a disposizione? Esaminiamo innanzitutto il fondamento teorico dei software di compressione, illustrando dunque le principali caratteristiche degli algoritmi di compressione.

Algoritmi di compressione

Una prima distinzione tra gli algoritmi di compressione si individua tra algoritmi lossless, ovvero senza alcun tipo di perdita di qualità e algoritmi lossy, in cui la riduzione di spazio occupato su disco si accompagna a una perdita di qualità. Si tratta, spesso, di un peggioramento qualitativo difficilmente percepibile: ad esempio nel caso della codifica mp3 per i file audio.

Tra gli algoritmi più utilizzati individuiamo senz'altro l'algoritmo di Huffman, l'algoritmo di Shannon-Fano e l'algoritmo di Lempel, Ziv e Welch. Pur non dilungandoci in spiegazioni teoriche, esaminiamo le principali caratteristiche dell'algoritmo di Huffman, che ha segnato la storia delle tecniche di compressione.

Rimandiamo i lettori interessati a ulteriori approfondimenti sulle tecniche di Shannon-Fano e Lempel-Ziv-Welch a link più specifici su questo argomento:

L'algoritmo di Huffman

L'algoritmo di Huffman appartiene alla categoria lossless, non introduce cioè nessuna perdita di qualità. Possiamo scomporne il funzionamento in cinque passi elementari:

Il guadagno di spazio al termine della compressione è dovuto al fatto che gli elementi che si ripetono frequentemente sono identificati da un codice breve, che occupa meno spazio di quanto ne occuperebbe la loro codifica normale. Viceversa gli elementi rari nel file originale ricevono nel file compresso una codifica lunga, che può richiedere, per ciascuno di essi, uno spazio anche notevolmente maggiore di quello occupato nel file non compresso.

Dalla somma algebrica dello spazio guadagnato con la codifica breve degli elementi più frequenti e dello spazio perduto con la codifica lunga degli elementi più rari si ottiene il coefficiente di compressione prodotto dall'algoritmo di Huffman. Da quanto detto si deduce che questo tipo di compressione è tanto più efficace quanto più ampie sono le differenze di frequenza degli elementi che costituiscono il file originale, mentre scarsi sono i risultati che si ottengono quando la distribuzione degli elementi è uniforme.

Corsi
Corso HTMLCorso HTML
Il linguaggio di marcatura per il Web. A partire da 29 €.
Corso Webmaster AvanzatoCorso Webmaster Avanzato
Diventa un Webmaster professionista. A partire da 39 €.
Corso Webmaster BaseCorso Webmaster Base
Creare un sito Web da zero. A partire da 39 €.
Vedi anche...
Annunci

Mr.Webmaster

Pubblicità
Chi Siamo
Contattaci
Collabora
Note Legali
© 2003 - 2012 Mr.Webmaster - Il portale dei Webmaster Italiani - Tutti i diritti riservati | Powered by IKIweb Internet Media S.r.l. - PIVA 02848390122