Kod komputerowy można uznać za DNA cyfrowego świata — surowe linie danych, z których składają się wszystkie programy, pliki graficzne i cyfrowa muzyka. Im większy i bardziej złożony plik lub aplikacja, tym więcej zawiera kodu. Biorąc pod uwagę skończone ograniczenia dysków twardych i innych rodzajów przechowywania danych, kompresja kodu jest często wykorzystywana do tymczasowego zmniejszania rozmiaru plików. Działa przy użyciu specjalnych algorytmów, aby mniejszy fragment kodu oznaczał większy fragment. Dane mogą być kompresowane i dekompresowane w ten sposób, o ile program kompresji zna prawidłowy algorytm do ich odblokowania.
Większość ludzi, którzy wiedzą, jak korzystać z komputera, ma przynajmniej przelotną znajomość sposobu przechowywania danych, w kategoriach kilobajtów, megabajtów, gigabajtów i tak dalej. To, czego mogą nie rozumieć, to związek między tymi jednostkami miary a rzeczywistymi słowami, grafiką, muzyką i programami, którymi manipulują na ekranie. Pojedynczy bajt reprezentuje pojedynczy znak tekstu, a sam składa się z ośmiu mniejszych jednostek zwanych bitami. Bity są surowymi składnikami informacji cyfrowych, a sposób ich ułożenia sprawia, że powstają różne litery alfabetu, cyfry lub inne rodzaje znaków.
Program do kompresji kodu pobiera bity i bajty, które składają się na dany plik, i koduje je tak, aby jeden lub dwa znaki skompresowanej wersji reprezentowały większą liczbę oryginału. Dwa główne typy kompresji kodu to stratna i bezstratna. Kompresja stratna może być stosowana w przypadkach, gdy pewna utrata danych jest akceptowalna, na przykład w plikach muzycznych, w których niektóre częstotliwości są niepotrzebne. Zasadniczo algorytm stratny zlicza, ile razy dana sekcja danych jest ponownie używana w całym pliku i generuje mniejszy fragment kodu zawierający tę liczbę. Za pomocą tej metody można zazwyczaj osiągnąć większą kompresję rozmiaru, a format MP3 jest przykładem tego typu skompresowanego pliku.
Podstawowa różnica funkcjonalna między kompresją stratną i bezstratną polega na tym, że przy kompresji stratnej dane, których nie można skompresować, są odrzucane, podczas gdy kompresja bezstratna utrzymuje je w stanie nieskompresowanym. Prowadzi to do większych rozmiarów skompresowanych plików, ale z zachowaniem oryginalnej jakości pliku. Dokumenty tekstowe i inne podobne pliki, w których informacje nie mogą zostać utracone, muszą być w ten sposób skompresowane.
Ogólnie rzecz biorąc, skompresowanego pliku nie można używać ani manipulować nim, chyba że zostanie on najpierw rozpakowany. Kompresja jest stanem przejściowym, dlatego jest wykorzystywana głównie do celów magazynowania lub transmisji. Nie dotyczy to jednak skompresowanych plików muzycznych i wideo, dla których istnieją programy, które mogą dekodować w locie, podczas odtwarzania.