Angolo Informatico (a cura di ing.iunior M.De Ghetto)
In questo nuovo appuntamento vedremo un altro software utile a chiunque volesse inviare un documento allegato a un’e-mail: un programma per comprimere e decomprimere file.
Compressione di file con “7zip”
A cosa serve un programma di questo genere? Semplice: permette di comprimere uno o più file in un file unico e, al momento opportuno, di decomprimere tale file per ottenere i file originari senza alcuna perdita di informazioni.
Il file ottenuto con la compressione sarà, spesso, notevolmente più piccolo della dimensione dei file originari. Il grado di compressione dipende, però, dal tipo dei file che devono essere compressi. Per esempio, da un file di testo semplice (estensione .txt) potremo ottenere un file compresso estremamente piccolo, spesso anche meno del 30% della dimensione del file originario.
Se tentassimo di comprimere un’immagine potremmo avere una sorpresa: infatti, il file compresso potrebbe avere una dimensione leggermente più grande di quella del file originario.
Questo fatto dipende strettamente dal tipo di immagine: se l’immagine ha ampie aree contenenti lo stesso colore (per esempio un grande contorno bianco) la compressione potrà portare l’effetto sperato, ma se l’immagine contiene tutte zone non omogenee, la compressione non potrà avvenire.
Perché, allora, un file immagine compresso può diventare più grande? La compressione aggiunge informazioni relativamente a sequenze di byte uguali, elimina le ripetizioni e quindi fa risparmiare spazio solo se nel file originario esistono effettivamente delle ripetizioni. Nel caso di un’immagine complessa e disomogenea le ripetizioni sono in numero troppo limitato e le informazioni aggiunte dal software di compressione aumentano la dimensione del file finale.
Per comprendere questo concetto, proviamo a fare un semplice esempio, indicando tra parentesi le informazioni aggiunte ai fini della compressione. Ovviamente le tecniche per comprimere degli schemi ridondanti sono più complesse di quelle semplificate che mostreremo. Supponiamo di avere un file contenente un testo come il seguente:
Questo è un testo semplice. Questo è un testo molto semplice, così semplice da risultare quasi banale. E’ banale perché deve risultare semplice.
Proviamo ora a creare una tabella di elementi ripetuti:
Simbolo |
Testo |
(1) |
Questo è un testo |
(2) |
semplice |
(3) |
banale |
(4) |
risultare |
Infine creiamo il file compresso:
(1) (2). (1) molto (2), così (2) da (4) quasi (3). E’ (3) perché deve (4) (2).
(1=Questo è un testo)(2=semplice)(3=banale)(4=risultare)
Il testo originario è composto da 144 caratteri, mentre il testo compresso ne ha 134. Teniamo però conto che i meccanismi di compressione sono più sofisticati e non utilizzano parentesi e segni di eguaglianza, quindi il fattore di compressione sarà maggiore di quello ottenuto in questo esempio.
Inoltre, più è grande il file di testo originario e più è probabile trovare parole o frasi ripetute, rendendo la compressione molto più efficace.
La decompressione è effettuata sostituendo tutti i “tag” con i corrispondenti valori della tabella di compressione. Ecco quindi il motivo per il quale non c’è alcuna perdita di informazione.
Ben diversa è la tecnica che rende più efficace la compressione di immagini. Per questo tipo di compressione non è possibile utilizzare un prodotto come 7-zip (WinZip, PkZip e così via) ma è necessario utilizzare un software per il fotoritocco o per la gestione di immagini. L’operazione di compressione eseguita con questi programmi è realizzata eliminando o fondendo gruppi di punti dell’immagine e quindi riducendo la definizione dell’immagine stessa. Questo tipo di compressione comporta necessariamente una perdita di informazioni, in quanto da un file immagine compresso non è possibile risalire al file immagine non compresso.
I vantaggi della compressione sono molteplici, dato che possiamo:
- allegare un unico file a un’e-mail, con una dimensione minore di quella totale dei file originari;
- raggruppare tutti i file di un unico progetto nello stesso file, ai fini dell’archiviazione;
- ridurre le dimensioni dei file “storici” per effettuare il backup in un unico supporto;
- trasportare più file in una chiavetta USB;
- archiviare i file in un file compresso dotato di password, per evitare che persone non autorizzate possano visionare i file stessi.
7-zip è un software open source, scaricabile gratuitamente dal sito http://www.7-zip.org/.
Solitamente le versioni disponibili sono molteplici, ma il consiglio che possiamo dare è quello di evitare le versioni “beta”, in quanto sono versioni ancora in fase di sviluppo e quindi non ancora ben stabilizzate, e di evitare le versioni “x64” a meno che non abbiate installato un sistema operativo a 64 bit. Generalmente la versione a 32 bit è quella ottimale.
Chi volesse ottenere informazioni in merito agli argomenti presentati in questa rubrica, oppure proporre argomenti da trattare nei prossimi appuntamenti, può farlo inviando una richiesta all’indirizzo e-mail mario@deghetto.it oppure alla Segreteria dell’Ordine.