Arvutikoodi võib pidada digitaalmaailma DNA-ks — töötlemata andmereadeks, mis moodustavad kõik programmid, graafilised failid ja digitaalse muusika. Mida suurem ja keerulisem fail või rakendus, seda rohkem koodi see sisaldab. Arvestades kõvaketaste ja muude andmesalvestustüüpide piiratud piiranguid, kasutatakse failide suuruse ajutiseks vähendamiseks sageli koodi tihendamist. See töötab spetsiaalsete algoritmide abil, et muuta väiksem koodiosa suuremaks. Andmeid saab sel viisil tihendada ja lahti pakkida, kui tihendusprogramm teab nende avamiseks õiget algoritmi.
Enamik inimesi, kes oskavad arvutit kasutada, tunnevad vähemalt mööduvalt andmete salvestamise viisi – kilobaitides, megabaitides, gigabaitides jne. Mida nad ei pruugi mõista, on seos nende mõõtühikute ja tegelike sõnade, graafika, muusika ja programmide vahel, mida nad ekraanil manipuleerivad. Üks bait tähistab ühte tekstimärki ja ise koosneb kaheksast väiksemast ühikust, mida nimetatakse bittideks. Bitid on digitaalse teabe töötlemata komponendid ja nende paigutus võimaldab kasutada erinevaid tähestiku tähti, numbreid või muid märke.
Kooditihendusprogramm võtab antud faili moodustavad bitid ja baidid ning kodeerib need nii, et tihendatud versiooni üks või kaks tähemärki esindavad suuremat arvu originaali. Koodi tihendamise kahte peamist tüüpi nimetatakse kadudeta ja kadudeta. Kadudega tihendamist saab kasutada juhtudel, kui teatud andmete kadu on vastuvõetav, näiteks muusikafailide puhul, mille teatud sagedused on tarbetud. Põhimõtteliselt loendab kadudega algoritm, mitu korda teatud andmeosa failis uuesti kasutatakse, ja genereerib väiksema koodilõigu, mis vastab sellele numbrile. Selle meetodi abil on tavaliselt võimalik saavutada suuremat tihendamist ja MP3-vorming on seda tüüpi tihendatud faili näide.
Põhiline funktsionaalne erinevus kadudeta ja kadudeta pakkimise vahel seisneb selles, et kadudeta pakkimise korral visatakse andmed, mida ei saa tihendada, kõrvale, samas kui kadudeta pakkimine jätab need tihendamata. See toob kaasa suurema tihendatud faili suuruse, kuid säilitab faili algse kvaliteedi. Tekstidokumendid ja muud sarnased failid, milles ei saa infot kaduma minna, tuleb sellisel viisil tihendada.
Üldiselt ei saa tihendatud faili kasutada ega töödelda, kui see pole esmalt lahti tihendatud. Tihendamine on ajutine olek, seetõttu kasutatakse seda peamiselt salvestamiseks või edastamiseks. See ei laiene aga tihendatud muusika- ja videofailidele, mille jaoks on olemas programmid, mis suudavad taasesituse ajal lennult dekodeerida.