Unicode: Porovnání verzí
Smazaný obsah Přidaný obsah
multilingual → vícejazyčný značka: editace z Vizuálního editoru |
m Podkapitoly "Basic Multilingual Plane", "Roviny Unicode" a "Náhradní páry", oprava pomlček, úprava části UCS-2 |
||
Řádek 12:
== Historie ==
Ke konci osmdesátých let 20. století vznikla naléhavá potřeba sjednotit různé kódové tabulky znaků pro národní abecedy.
V té době vznikly současně dva projekty pro vytvoření jednotné univerzální kódovací tabulky znaků. Byl to projekt [[ISO 10646]] organizace [[Mezinárodní organizace pro normalizaci|ISO]] a projekt ''Unicode''. Norma ISO definuje tzv. [[UCS]] – ''Universal Character Set''. Kolem roku [[1991]] došlo k dohodě a projekty spojily své úsilí na vytvoření jednotné tabulky. Oba projekty stále existují a publikují své [[standard]]y samostatně, ale tabulky znaků jsou kompatibilní a jejich rozšiřování je koordinováno.
Řádek 27:
* [http://www.unicode.org/versions/Unicode3.0.0/ Unicode '''3.0'''] ([[1999]], [[2000]], odpovídá normě ISO 10646-1:2000), [http://www.unicode.org/versions/Unicode3.1.0/ Unicode '''3.1'''] ([[2001]]), [http://www.unicode.org/versions/Unicode3.2.0/ Unicode '''3.2'''] ([[2002]])
* [http://www.unicode.org/versions/Unicode4.0.0/ Unicode '''4.0'''] ([[2003]], odpovídá třetí verzi ISO 10646:2003), [http://www.unicode.org/versions/Unicode4.1.0/ Unicode '''4.1'''] ([[2005]])
* [http://www.unicode.org/versions/Unicode5.0.0/ Unicode '''5.0'''] ([[2006]]), [http://www.unicode.org/versions/Unicode5.1.0/ Unicode '''5.1'''] ([[2008]]), [http://www.unicode.org/versions/Unicode5.2.0/ Unicode '''5.2'''] ([[2009]])
* [http://www.unicode.org/versions/Unicode6.0.0/ Unicode '''6.0'''] ([[2010]]), [http://www.unicode.org/versions/Unicode6.1.0/ Unicode '''6.1'''] ([[2012]]), [http://www.unicode.org/versions/Unicode6.2.0/ Unicode '''6.2'''] ([[2012]]), [http://www.unicode.org/versions/Unicode6.3.0/ Unicode '''6.3'''] ([[2013]])
* [http://www.unicode.org/versions/Unicode7.0.0/ Unicode '''7.0'''] ([[2014]])
| příjmení = Němec
| jméno = Petr
Řádek 47:
| datum aktualizace =
}}</ref>, celkem přidává 2834 nových znaků (327 do BMP, zbytek do Plane 1), zavádí 23 nových jazyků.<ref>[http://www.unicode.org/versions/Unicode7.0.0/ Unicode 7.0.0] na unicode.org, cit. 2014-08-26</ref>
* [http://www.unicode.org/versions/Unicode8.0.0/ Unicode '''8.0'''] (2015)
| titul = Unicode Data 8.0.0
| url = http://www.unicode.org/Public/8.0.0/ucd/UnicodeData.txt
Řádek 54:
</ref>.
* [http://www.unicode.org/versions/Unicode9.0.0/ Unicode '''9.0'''] ([[2016]])
* [http://www.unicode.org/versions/Unicode10.0.0/ Unicode '''10.0'''] ([[2017]])
* [http://www.unicode.org/versions/Unicode11.0.0/ Unicode '''11.0'''] ([[2018]])
* [http://www.unicode.org/versions/Unicode12.0.0/ Unicode '''12.0'''] ([[2019]])
== Principy standardu Unicode ==
* '''Jednotnost'''
* '''Univerzálnost'''
* '''Jednoznačnost'''
* '''Maximální využití'''
Standard Unicode se oproti ISO 10646 navíc zabývá implementací algoritmů pro písma psaná zprava doleva (např. [[arabština]]), podporou oboustranných textů (jako např. směs hebrejštiny a latinky), algoritmy pro [[abecední řazení|řazení]] a porovnávání textů.
Řádek 73:
== Architektura Unicode ==
==={{Kotva|BMP}} Basic Multilingual Plane ===
Unicode byl původně navrhován jako 16bitová znaková sada, což se později (hlavně s ohledem na [[CJK|čínské znaky]]) ukázalo jako nedostatečné. Původní rozsah Unicode, tj. prvních 65 536 znaků, které jsou reprezentovatelné pomocí 16 bitů, se označuje jako BMP (Basic Multilingual Plane) – základní vícejazyčná rovina Unicode.
=== Roviny Unicode ===
Standard [[ISO/IEC 10646]] oproti Unicode zpočátku používal 31bitové kódování znaků, které umožňuje reprezentaci více než 2 miliard znaků. Toto množství se ukázalo být zbytečně velké, proto bylo v listopadu 2003 v souvislosti se zavedením kódování UTF-16 omezeno na rozsah 0 až 10FFFF<sub>16</sub> rozdělený na 17 tak zvaných '''rovin''' ({{Vjazyce|en}} {{Cizojazyčně|en|''plane''}}) po 65 536 znacích (10000<sub>16</sub>). Celý rozsah kódů tak lze rozdělit na BMP (Plane 0), Plane 1, Plane 2, ... až Plane 16. Celková kapacita Unicode je tedy 1114112 kódových bodů.
==={{Kotva|Surrogate Pairs}} Náhradní páry ===
Znaky mimo BMP se v [[UTF-16]] kódují dvojicí speciálních kódů, které se nazývají '''zástupné''' nebo '''náhradní páry''' ({{Vjazyce|en}} {{Cizojazyčně|en|''surrogate pairs'', ''surrogates''}}). Kódy používané pro náhradní pády spadají do BMP a nejsou jim přiřazeny žádné znaky.
=== Skupiny Unicode ===
Řádek 102 ⟶ 113:
* UTF-16 (UTF-16BE, UTF-16LE)
* UTF-32 (UTF-32BE, UTF-32LE)
* [[GB 18030|GB18030]]
Kódování UTF-32, UTF-16 a UCS-2 mají každá své varianty podle používaného [[endianita|pořadí bajtů]]. Buď je napevno stanoveno pořadí little-endian, resp., big-endian, nebo se toto pořadí určuje podle tzv. ''[[byte order mark]]'' (BOM), speciální značky umístěné na začátku textu.
Řádek 124 ⟶ 135:
==== UCS-2 ====
==== Další kódování ====
Z různých důvodů existují také další, méně často používaná, kódování, jako
== Využití ==
|