Konverze formátů při přenosu
Z MiS
Obsah |
Konverze formátů
Jedním z úkolů prezentační vrstvy je převádět formát zápisu (způsob kódování) složitějších datových struktur. Může se jednat o čísla delší než 1 byte, ale také o obrázky a další datové struktury.
Pokud komunikující počítače používají odlišnou reprezentaci těchto dat, je třeba data při přenosu zkonvertovat.
- V modelu ISO/OSI to má na starosti prezentační vrstva.
- Reálně používaný model TCP/IP prezentační vrstvu nemá, konverzi si musí provést aplikace sama.
Kódování textů
- Veškerá data jsou v počítači ukládána a přenášena jako posloupnosti 0 a 1.
- Pro ukládání a přenášení textů je tedy nutno texty převést (zakódovat) na čísla.
ASCII a další
- Běžně se používá pro ukládání znaků kódování ASCII, které převádí každý písmeno na jeho 8bitový kód. (Viz třeba Wikipedia.org → ASCII.)
- Existují však i další kódování: UTF-8, UTF-16, nebo třeba EBCDIC.
ASCII a kódové stránky
- I u samotného ASCII ovšem dochází k nutnosti konverze.
- Problém je v tom, že 8 bitů umožňuje pouze 256 různých kombinací, což sice dostačuje pro základní latinskou abecedu, ale neumožňuje ukládat rozšířené národní abecedy (azbuka, znaky s diakritikou, čínská abeceda,...)
- Rozšířené národní abecedy (například znaky s diakritikou v češtině a dalších jazycích) používají různé tzv. „kódové stránky“, které přiřazují znakům ze 2. poloviny ASCII tabulky speciální významy.
- Například pro češtinu se běžně používají kódové stránky:
- Windows-1250 (kódová stránka 1250)... navržena a používána Microsoftem v grafickém prostředí Windows
- Latin II (kódová stránka 852)... starší standard, používá Microsoft při zápisu názvů souborů (je třeba používat při psaní skriptů pro Windows).
- ISO-8859-2... standard organizace ISO. Používán běžně většinou ostatních operačních systémů.
- Vzhledem k problémům s detekcí kódových stránek se dnes kódování ASCII postupně nahrazuje univerzálním kódováním UTF-8, které je s ASCII částečně kompatibilní (reprezentace prvních 128 znaků ASCII je stejná).
- Například ve většině linuxových distribucí je již UTF-8 standardem. Stejně tak je doporučenou volbou pro psaní webových stránek.
Pokud komunikují počítače, které používají odlišné způsoby kódování znaků, je třeba je převádět (konvertovat).
Typickým příkladem takové konverze je převod mezi kódovými stránkami ASCII v prohlížečích.
Little × Big Endian
Obrázky
ASN.1
Zdroje
- PETERKA, Jiří. Prezentační vrstva. eArchiv.cz [online]. 1996 [cit. 2017-06-26]. Dostupné z: http://www.earchiv.cz/a92/a226c110.php3
- ASCII. In: Wikipedia: the free encyclopedia [online]. San Francisco (CA): Wikimedia Foundation, 2016 [cit. 2017-06-26]. Dostupné z: https://cs.wikipedia.org/wiki/ASCII
- UTF-8. In: Wikipedia: the free encyclopedia [online]. San Francisco (CA): Wikimedia Foundation, 2016 [cit. 2017-06-26]. Dostupné z: https://cs.wikipedia.org/wiki/UTF-8