Kaj je kodiranje znakov?

Kodiranje znakov v računalniškem programiranju je metoda ali algoritem, ki se uporablja za iskanje običajno številčne predstavitve znaka, glifa ali simbola. Uporaba kodiranja znakov v računalnikih je potrebna, ker so informacije v računalniškem pomnilniku in na računalniško berljivem mediju shranjene kot zaporedja bitov ali številk. To zahteva uporabo kodiranja za prevajanje neštevilskih znakov, ki se uporabljajo za prikaz ali človeku berljiv izhod, v obliko, ki jo lahko upravlja računalnik. V bolj specifični aplikaciji lahko dokumenti HyperText Markup Language (HTML), ki jih berejo spletni brskalniki, določijo, katero vrsto kodiranja znakov uporabljajo, da brskalniku sporočijo, kateri nabor znakov naj uporabi pri prikazovanju informacij v dokumentu. V uporabi je več shem kodiranja, čeprav mnoge od teh lastniških in podedovanih nizov počasi nadomešča standard kodiranja Unicode®.

V zgodnjih dneh računalnikov, ko je bil pomnilniški prostor omejen, so bili osnovni znaki angleške abecede – vključno z ločili in številkami – shranjeni v 7-bitnih zaporedjih, ki so omogočala 128 različnih znakov. V tej izvirni shemi je vsak 7-bitni bajt predstavljal en znak angleške abecede, oštevilčen v zaporedju. To kodiranje znakov je bilo učinkovito in je bilo sčasoma standardizirano in uporabljeno v večini izdelanih računalnikov. Čeprav se je sistem kodiranja razvil v standard kodiranja Unicode®, je koncept ostal enak. Vsak posamezen znak v jeziku je namreč neposredno povezan z enim samim številom znotraj velikega standardnega nabora znakov in to število je tisto, kar računalnik uporablja za shranjevanje, obdelavo in indeksiranje znaka.

Druge vrste kodiranja znakov so bile razvite iz različnih razlogov. Nekateri, ki so bili posebej prilagojeni angleški abecedi in so bili namenjeni uporabi za besedilo, so svoje znake preslikali samo v 7-bitna zaporedja in jih nato razširili na 8-bitne bajte ali oktete. To je vplivalo na prihranek 1 bita na oktet, pri čemer je učinkovito uporabljalo kodiranje znakov kot vrsto stiskanja. Druge sheme kodiranja so poskušale zagotoviti osnovne informacije o znaku, nato pa dodatne znake, ki predstavljajo posebne naglase, ki bi jih bilo mogoče uporabiti pri pisanju v drugem jeziku, čeprav so bile te večinoma opuščene zaradi enostavnejših metod kodiranja ena proti ena.

V dokumentih HTML je kodiranje znakov približno enako kot širši koncept, le da definirano kodiranje obsega celoten niz znakov. To je lahko pomembno ne le za tuje jezike, ampak za dokumente, ki uporabljajo posebne simbole za naravoslovje ali matematiko, ki niso prisotni v vseh naborih znakov. Uporaben je lahko tudi za uporabo ločil in drugih glifov, ki morda niso prisotni ali so različno preslikani v shemah kodiranja. Dokumenti, ki ne opredeljujejo pravilno nestandardnega kodiranja znakov, se lahko prikažejo napačno ali pa so napolnjeni z nesmiselnimi znaki in nadomestnimi oznakami namesto berljivih informacij.