Kódování znaků
| Website: | Moodle ZČU |
| Kurs: | KVD/UIN Úvod do informatiky pro vzdělávání - šablona |
| Buch: | Kódování znaků |
| Gedruckt von: | Nepřihlášený host |
| Datum: | Montag, 9. November 2026, 05:27 |
1. Základní pojmy kódování znaků
V oblasti kódování znaků není zcela ustálená terminologie. V dalším využijeme pojmy z modelu, který vytvořilo Unicode Consortium:
- Množina znaků (Abstract Character Repertoire), která zahrnuje písmena, čísla i další znaky včetně některých abstraktních, jež chcete kódovat (např. @).
- Znaková sada (Coded Character Set) ukazuje způsob kódování (tedy bijektivní zobrazení) mezi množinou znaků (ACR) a množinou nezáporných celých čísel (např. @ na 6410 = 4016).
- Forma kódování (Character Encoding Form) určuje způsob mapování výsledku CCS na daný počet bitů (např. při formě kódování na 8 bitů je 4016 = 010000002).
- Schéma kódování (Character Encoding Scheme) určuje schéma v bytech (často používaným pojmem je zde i charset), v němž bude CEF zapsán (např. při schématu na dva byty je 010000002 = 004016).

Obr. 1: Znakové kódování a schéma
návaznosti základních pojmů. (Zdroj vlastní)
Je ve znakovém kódování určena kódovým
slovem i podoba příslušného znaku (glyph)?
2. Vývoj kódování znaků
V roce 1967 byla uveřejněna tzv. ASCII tabulka (American Standard Code for Information Interchange), která se stala základem většiny doposud používaných kódování znaků. První bit v rámci CEF byl nastaven na 0. V rámci charsetu je využit jeden byte, jehož zbylých sedm bitů nese informaci.
![]()
Obr.
2: Kódy znaků v ASCII tabulce. (Zdroj: Anomie, Public domain, via Wikimedia Commons)
V jaké soustavě jsou kódy znaků v tabulce
výše zapsány?
Významná výhoda spočívá v tom, že jsou v tabulce patrné celé skupiny znaků, které nějak patří k sobě:
- Na začátku jsou řídící znaky.
- V tabulce jsou seřazeny vzestupně desítkové cifry.
- V tabulce jsou seřazena vzestupně velká písmena.
- V tabulce jsou seřazena vzestupně malá písmena.
Setká se ve své praxi s kódy z ASCII tabulky běžný uživatel?
2.1. Cvičení k ASCII tabulce
- Co se musí změnit v kódovém slově z ASCII tabulky, aby reprezentovalo místo velkého malé písmeno?
- Jakému znaku je ASCII tabulce přiřazeno kódové slovo s CES 2016.
Tipy pro řešení
Podívejte se pozorně na ASCII tabulku.
![]()
Obr.
2: Kódy znaků v ASCII tabulce. (Zdroj: Anomie, Public domain, via Wikimedia Commons)
- Vzpomeňte si na to, co je to CEF.
- Vyhledejte v tabulce příslušné CES a zamyslete se. Případně si vyzkoušejte kódové slovo převedené do desítkové soustavy napsat se stisknutou levou klávesou Alt na numerické klávesnici.
Návrh řešení
Návrh řešení si prohlédněte, až se pokusíte najít vlastní odpovědi.
1. Co se musí změnit v kódovém slově
z ASCII tabulky, aby reprezentovalo místo velkého malé písmeno?
2. Jakému znaku je ASCII tabulce
přiřazeno kódové slovo s CES 2016?
2.2. Nadstavba ASCII
S rozšiřováním digitálních technologií ve světě bylo třeba přizpůsobit kódování znaků i národním potřebám. Začaly vznikat kódy, které byly od 0 do 127 stejné jako ASCII a dále se nacházely různé podle kódované národní abecedy.
- Kód bratrů Kamenických
- ISO 8859-2
- Windows-1250
- KOI-8
- CP852
3. Unicode
Znaková sada, jejíž první verzi v roce 1991 vytvořilo Unicode Consortium.
- Prvních 128 znaků jako u US-ASCII.
- Kódové body se zapisují U+hex.
- Nejprve 16bitové značky (BMP–Basic MultilingualPlane), posléze 32bitové (využívá se však jen 21 b).
- UTF-8,
- UTF-16,
- UTF-16BE,
- UTF-16LE,
- UTF-32,
- UTF-32BE,
- UTF-32LE.
Zkratka BE je Big Endian (vyšší řády jsou uloženy na nižší adrese).
Zkratka LE je Little Endian.
- UTF-16LE – 4600
- UTF-32BE – 00000046
3.1. UTF-8
- U+0000 až U+007F 7 0.......
- U+0080 až U+07FF 11 110..... 10......
- U+0800 až U+FFFF 16 1110.... 10...... 10......
- U+100000 až U+10FFFF 21 11110... 10...... 10...... 10......
- K U+004B 01001011 4B
- ž U+017E 11000101 10111110 C5 BE
- € U+20AC 11100010 10000010 10101100 E2 82 AC
3.2. Shrnutí
Zdroje
- Unicode Standard [online]. 1991-2010, 2010-12-03 [cit. 2021-03-29]. About the
Unicode Standard. Dostupné z: <http://www.unicode.org/standard/standard.html>.