Dacă ați fost vreodată nevoit să trimiteți prin e-mail, să încărcați sau să descărcați mai multe fișiere sau programe de mari dimensiuni, cel mai probabil ați întâlnit fișiere ZIP. Cunoscute și sub numele de fișiere comprimate sau arhivate, fișierele ZIP condensează mai multe fișiere într-o singură locație cu extensia .zip sau .ZIP, reducând dimensiunea totală și făcându-le mai ușor de transmis.
Phillip Katz a inventat fișierul ZIP în 1986, iar acesta a fost implementat pentru prima dată cu programul PKZip pentru compania lui Katz, PKWare, Inc. În cele din urmă, metoda de compresie a lui Katz a devenit de uz comun în cadrul sistemelor de operare populare. Microsoft Windows și sistemul de operare Mac OS de la Apple includ utilități încorporate pentru a comprima și descompune fișiere, iar programe precum WinRAR, WinZip și StuffIt le pot extinde.
Dar cum funcționează toate acestea? Ce fel de magie tehnologică este în joc care face ca fișierele dumneavoastră să fie mai mici, păstrând în același timp toate informațiile pentru mai târziu?
Această “magie” este de fapt un algoritm destul de simplu care ia aspectele redundante ale unui fișier și îl împarte în părți mai mici.
Pentru un exemplu ușor de înțeles, să luăm propoziția “Mashable poate ajuta la a face cititorii mai deștepți; cititorii pot ajuta la a face Mashable mai deștept” și să pretindem că este un fișier.
Care cuvânt din propoziția de exemplu apare de două ori. Dacă fiecare caracter și spațiu din această propoziție ar constitui o unitate de memorie, întregul lucru ar avea o dimensiune de fișier de 78 de unități. Dacă am crea un cod numerotat – sau un “dicționar” – pentru această propoziție, acesta ar putea suna cam așa:
1. Mashable
2. poate
3. ajuta
4. face
5. cititori
6. mai deștept
Această nouă propoziție are doar 24 de unități. Prin urmare, fișierul comprimat ar avea doar 24 de unități de memorie, în plus față de un alt fișier care enumeră codul nostru numerotat, astfel încât programul de comprimare să știe cum să aplice fiecare unitate de informație. Acest lucru se numește “compresie fără pierderi”; toate informațiile originale sunt păstrate.
Modul în care funcționează un program de compresie real este puțin mai complicat decât exemplul anterior – acesta ar recunoaște tipare. Un exemplu este litera “e” și un spațiu după “Mashable” și “make”. Dar, din moment ce nu există multe cazuri în care apare acest model special, cel mai probabil programul l-ar suprascrie cu un model mai evident. Programul real este capabil să găsească un dicționar și un fișier comprimat mult mai eficient decât am putea noi.
Potrivit site-ului educațional și instructiv HowStuffWorks, este obișnuit ca limbile să aibă modele redundante, motiv pentru care fișierele text sunt ușor de comprimat. Dar rata de reducere a fișierului depinde de mai mulți factori, inclusiv tipul și dimensiunea fișierului și modul în care programul alege să îl comprime.
În schimb, imaginile și fișierele MP3 conțin mai multe informații unice, fără multe modele. Aici intervine “compresia cu pierderi” – programele de compresie scapă de ceea ce consideră a fi informații inutile. Dacă ați avea o imagine scanată, de exemplu, cu un cer albastru, un program de compresie ar putea alege o singură culoare de albastru folosită pentru fiecare pixel. Dacă schema de compresie funcționează bine, schimbarea nu ar fi foarte vizibilă, dar dimensiunea fișierului ar fi semnificativ mai mică.
Problema compresiei cu pierderi, totuși, este că nu puteți obține fișierul original din fișierul comprimat, ceea ce o face mai puțin ideală decât compresia fără pierderi atunci când aveți nevoie să păstrați toate informațiile originale, cum ar fi atunci când descărcați baze de date și anumite aplicații.
Imaginea compozită de la Mashable, mulțumită lui , tose, Auris.