Kas yra kodo suspaudimas?

Kompiuterio kodas gali būti laikomas skaitmeninio pasaulio DNR – neapdorotomis duomenų eilutėmis, sudarančiomis visas programas, grafinius failus ir skaitmeninę muziką. Kuo didesnis ir sudėtingesnis failas ar programa, tuo daugiau kodo jame yra. Atsižvelgiant į ribotus standžiųjų diskų ir kitų duomenų saugojimo tipų apribojimus, kodo glaudinimas dažnai naudojamas laikinai sumažinti failų dydį. Jis veikia naudojant specialius algoritmus, kad mažesnė kodo dalis būtų didesnė. Tokiu būdu duomenis galima suspausti ir išspausti, jei glaudinimo programa žino teisingą algoritmą jiems atrakinti.

Dauguma žmonių, žinančių, kaip naudotis kompiuteriu, yra bent trumpam susipažinę su duomenų saugojimo būdu – kilobaitais, megabaitais, gigabaitais ir pan. Jie gali nesuprasti ryšio tarp šių matavimo vienetų ir tikrųjų žodžių, grafikos, muzikos ir programų, kuriomis jie manipuliuoja ekrane. Vienas baitas reiškia vieną teksto simbolį, o pats yra sudarytas iš aštuonių mažesnių vienetų, žinomų kaip bitai. Bitai yra neapdoroti skaitmeninės informacijos komponentai, o jų išdėstymas lemia skirtingas abėcėlės raides, skaičius ar kitus simbolius.

Kodo glaudinimo programa paima bitus ir baitus, sudarančius tam tikrą failą, ir užkoduoja juos taip, kad vienas ar du suglaudintos versijos simboliai reikštų didesnį originalo skaičių. Du pagrindiniai kodo glaudinimo tipai yra žinomi kaip nuostolingas ir be nuostolių. Prarastą glaudinimą galima naudoti tais atvejais, kai priimtinas tam tikras duomenų praradimas, pvz., muzikos failams, kuriuose kai kurie dažniai nereikalingi. Iš esmės nuostolingas algoritmas skaičiuoja, kiek kartų tam tikra duomenų dalis pakartotinai naudojama visame faile, ir sugeneruoja mažesnę kodo dalį, atitinkančią šį skaičių. Naudojant šį metodą paprastai galima pasiekti didesnio dydžio suspaudimą, o MP3 formatas yra tokio tipo suspausto failo pavyzdys.

Pagrindinis funkcinis skirtumas tarp nuostolingo ir nenuostolingo glaudinimo yra tas, kad naudojant nuostolingą glaudinimą, duomenys, kurių negalima suspausti, yra atmetami, o be nuostolių suglaudinant jie lieka nesuspausti. Dėl to suglaudinti failai yra didesni, tačiau išsaugoma pradinė failo kokybė. Tokiu būdu turi būti suspausti tekstiniai dokumentai ir kiti panašūs failai, kuriuose informacija negali būti prarasta.

Paprastai tariant, suspausto failo negalima naudoti ar juo manipuliuoti, nebent jis iš pradžių būtų išspaustas. Suspaudimas yra laikina būsena, todėl daugiausia naudojama saugojimui arba perdavimui. Tačiau tai netaikoma suspaustiems muzikos ir vaizdo failams, kuriems yra programų, kurios gali iššifruoti skrydžio metu, atkūrimo metu.