Razlika med kodiranjem in dekodiranjem

click fraud protection
Ženska posluša glasbo na mobilnem telefonu

Glasbene datoteke so običajno kodirane s kodekom MP3.

Zasluga slike: Purestock/Purestock/Getty Images

Kodiranje je proces prevajanja podatkov med dvema formatoma v skladu z nizom pravil ali formulo. Na primer, lahko kodirate "abc" v "ABC" z uporabo pravil za velike in male črke. Dekodiranje je obraten proces. Z istim naborom pravil lahko dekodirate "ABC" v "abc". Obstaja veliko različnih aplikacij za kodiranje in dekodiranje podatkov. Šifriranje je na primer oblika kodiranja, ki uporablja ključ. Brez ključa kodiranih podatkov ni mogoče dekodirati. Video podatki so kodirani, da so manjši, tako da si je mogoče ogledati tokove videa visoke ločljivosti prek interneta.

Kodiranje se običajno uporablja za zmanjšanje velikosti avdio in video podatkov. Program koder-dekodirnik, imenovan kodek, uporablja vrsto matematičnih algoritmov, ki odpravljajo odvečne podatke. Recimo, da je datoteka vsebovala podatke "ABCDQABC." Algoritem kodeka #1 je morda treba zamenjati "ABC" z "Z." Nastala datoteka bi bila "ZDQZ", ki je 50 odstotkov manjša od izvirnika mapa. Algoritem kodeka #2 lahko nadomesti "ABC?" z "Y" in "?ABC" z "X", kje je "?" označuje kateri koli znak. Nastala datoteka bi bila "YX", kar je 75 odstotkov manjše od izvirne datoteke.

Video dneva

Dekodiranje uporablja isti kodek za rekonstrukcijo izvirne datoteke iz kodirane datoteke. Na primer, uporaba kodeka #1 za "ZDQZ" v obratni smeri nadomesti "Z" z "ABC", da ustvarite izvirno datoteko "ABCDQABC". Kodek #1, ki je bil 50 odstotkov manjši, se imenuje kodek brez izgub, ker dekodiranje vedno znova ustvari izvirnik mapa. Kodek #2 dekodira "YX" z "ABC?? ABC,« in nato poskuša uganiti, kateri so manjkajoči znaki. Kodek lahko ugane "DE", kar ima za posledico "ABCDEABC." Kodek #2, ki je bil 75 odstotkov manjši, je a kodek z izgubo, ker lahko postopek dekodiranja ustvari datoteko, ki je blizu izvirniku, vendar ne identična.

URL-ji in nabori znakov

Vsako kodiranje ne daje rezultata, ki je manjši od nekodiranih podatkov. Na primer, URL "example.com/Secret of Life.html" ni veljaven, ker vsebuje presledke. Spletni programer kodira URL, ki za ustvarjanje zamenja vse presledke z "%20". "example.com/Secret%20of%20Life.html." Postopek dekodiranja izvede inverzno operacijo in zamenja "%20" s presledkom. Podobno lahko program baze podatkov kodira vse podatke v Unicode, glavni nabor znakov v večini jezikov. Ko uporabnik pridobi podatke, program dekodira Unicode, da se ujema z uporabniškim jezikom in nastavitvami tipkovnice.

Kodiranje, ki ga ni mogoče dekodirati

Nekatera kodiranja niso namenjena dekodiranju. Razpršitev je dolg niz naključnih znakov, ki se uporabljajo z algoritmom kodiranja za ustvarjanje šifriranega rezultata, ki ga ni mogoče dekodirati, tudi če poznate zgoščeno vrednost. Uporabniško geslo je lahko na primer šifrirano z razpršitvijo in shranjeno v zbirki podatkov. Če heker najde bazo podatkov, ne more dekodirati nobenega gesla. Ko se uporabnik prijavi, sistem kodira geslo, ki ga uporabnik vnese z razpršitvijo, in primerja rezultat s tistim, ki je shranjen v bazi podatkov. Če uporabnik pozabi geslo, ga mora spremeniti, saj sistem ne pozna njegovega izvirnega gesla, le njegovo šifrirano vrednost.