Počítač rozumie iba číslam — konkrétne binárnym číslam (0 a 1). Napriek tomu dokáže spracovávať text, zobrazovať fotografie, prehrávať hudbu aj streamovať video. Ako je to možné? Každý typ informácie má svoju kódovaciu schému — pravidlá, ako ho previesť na čísla.
Text — ASCII a Unicode
Najjednoduchší spôsob kódovania textu je priradiť každému znaku číslo.
ASCII (American Standard Code for Information Interchange) je historická schéma, ktorá priradila čísla 0–127 základným znakom anglickej abecedy, čísliciam a špeciálnym symbolom.
| Znak | ASCII kód | Binárne |
|---|---|---|
| A | 65 | 01000001 |
| a | 97 | 01100001 |
| 0 | 48 | 00110000 |
| ! | 33 | 00100001 |
ASCII podporuje iba 128 znakov — neobsahuje diakritiku ani znaky iných abeced. Pre medzinárodné texty bol vyvinutý Unicode, ktorý pokrýva viac ako 140 000 znakov zo všetkých svetových jazykov vrátane emotikonov.
Unicode (konkrétne kódovanie UTF-8) je dnes štandardom. UTF-8 je spätne kompatibilné s ASCII — prvých 128 znakov je rovnakých — a podľa potreby používa 1 až 4 bajty na jeden znak.
Obrázky — pixely a farebné kódovanie
Digitálny obrázok sa skladá z množstva malých farebných bodiek — pixelov (picture elements). Farba každého pixelu je zakódovaná číslom.
Čiernobiely obrázok: každý pixel je jedna hodnota — 0 (čierna) alebo 255 (biela), prípadne odtieň sivej medzi nimi.
Farebný obrázok (RGB model): každý pixel má tri hodnoty — intenzitu červenej (R), zelenej (G) a modrej (B). Každá zložka je číslo od 0 do 255, čo dáva viac ako 16 miliónov kombinácií farieb.
Pixel biely: R=255, G=255, B=255
Pixel cerny: R=0, G=0, B=0
Pixel cerveny: R=255, G=0, B=0
Rozlíšenie obrázka (napr. 1920x1080) udáva, koľko pixelov obrázok obsahuje — šírku a výšku. Nekomprimovaný farebný obrázok 1920x1080 by zaujal 1920 * 1080 * 3 bajty = viac ako 6 MB.
Zvuk — vzorkovanie a kvantizácia
Zvuk je fyzická vlna — kmitanie vzduchu. Aby ho počítač mohol uložiť, musí ho digitalizovať:
- Vzorkovanie (sampling) — pravidelne meriame amplitúdu zvukového signálu. CD kvalita používa 44 100 vzoriek za sekundu (44,1 kHz).
- Kvantizácia — každú vzorku zaokrúhlime na najbližšiu číselnú hodnotu. CD kvalita používa 16 bitov na vzorku (65 536 úrovní).
Čím viac vzoriek a bitov, tým vernejší záznam — ale aj väčší súbor.
Prečo je toto dôležité
Pochopenie reprezentácie dát pomáha vysvetliť:
- Prečo má farebná fotka väčší súbor ako čiernobiela.
- Prečo niektoré formáty strácajú kvalitu pri kompresii.
- Prečo texty s diakritikou niekedy nesprávne zobrazia znaky pri zlom kódovaní.
Cvičné príklady
Koľko farieb dokáže zakódovať RGB model, ak každá zložka používa hodnoty 0 až 255?