Кіріспе
TRON коды — TRON жобасында қолданылатын көп байттық таңба кодтамасы. Ол Unicode-қа ұқсас, бірақ Unicode-тың Хан біріктіру процесін қолданбайды: әрбір CJK таңбалар жиынтығының әрбір таңбасы жеке кодталады, соның ішінде қазіргі заманғы таңбалардың архаикалық және тарихи эквиваленттері де бар. Бұл қытай, жапон және корей мәтіндерін таңбалардың нақты түріне қатысты ешқандай күмәнділіксіз араластыруға мүмкіндік береді; алайда, бұл сонымен қатар, мағынасы бірдей көптеген таңбалар бірнеше рет кодталады, бұл кейбір операцияларды қиындатады. TRON-да 150 миллион кодтық нүктеге орын бар. Unicode 4.1-дегі 70 000-нан астам Хан таңбаларының қытай, корей және жапон нұсқалары үшін жеке кодтық нүктелер (егер қажет деп табылса) TRON-да 200 000-нан астам кодтық нүктелерді қажет етеді. TRON Unicode 2.0-дан бастап Хан емес таңбаларды қамтиды, бірақ Unicode-тың соңғы нұсқаларымен үнемі жаңартылмайды, себебі Unicode негізгі көптілді жазықтан тысқары кеңейіп, қолданыстағы жазу жүйелеріне таңбалар қосады. TRON кодтамасы JIS X 0213 сияқты басқа да соңғы кодтық беттерді қосу үшін жаңартылды. TRON кодтамасы үшін қаріптер бар, бірақ олар коммерциялық қолдану үшін шектеулерге ие. TRON коды.
Құрылымы
TRON кодындағы әрбір таңба екі байт ретінде кодталады (егер ол ағымдағы кодтау жазықтығында болса). ISO/IEC 2022 стандартына ұқсас, TRON таңба кодтамасы 48 400 кодтық нүктелі жазықтар арасында ауысу үшін «тілді анықтаушы кодтар» деп аталатын қашқыш тізбектерді пайдаланып, бір таңба кодтамасындағы бірнеше таңба жиынтығын басқарады. TRON кодына енгізілген таңба жиынтықтарына JIS X 0208 және GB 2312 сияқты қолданыстағы таңба жиынтықтары, сондай-ақ Dai Kan Wa Jiten сияқты басқа таңба көздері және Dongba символдары сияқты басқа кодтамаларда қамтылмаған жазу жүйелері кіреді. TRON кодына толық таңба жиынтықтарын қосудың нәтижесінде, мағынасы бірдей көптеген таңбалар бірнеше рет кодталады; мысалы, GT Typeface-тегі барлық канджи таңбалары өздерінің кодтық нүктелерін алады, олардың көпшілігі JIS X 0208 сияқты басқа канджи таңба жиынтықтарымен қайталасқанына қарамастан. Мұндай мысалдың бірі – 亜 таңбасы (Unicode U+4E9C), ол JIS X 0208 аймағында, GT Typeface аймағында және Dai Kan Wa Jiten аймағында кездеседі.
Бақылау кодтары
0x00-ден 0x20-ға және 0x7F-ге дейінгі байттар басқару кодтарында қолдану үшін резервтелген.
Таңба кодтары
Әр ұшақтағы кейіпкерлер төрт аймаққа бөлінеді. Әрбір аймақ жеке бөлінеді; мысалы, 1-ұшақта JIS X 0208 таңбалары 0x2121-ден басталатын А аймағында, JIS X 0213 таңбалары А және B аймақтарында, ал GB 2312 таңбалары 0x2180-ден басталатын C аймағында орналасады. Аймақ Бірінші байт Екінші байт Кодтық нүктелер саны А аймағы 0x21–0x7E 0x21–0x7E 94 × 94 = 8,836 Б аймағы 0x80–0xFD 0x21–0x7E 126 × 94 = 11,844 С аймағы 0x21–0x7E 0x80–0xFD 94 × 126 = 11,844 D аймағы 0x80–0xFD 0x80–0xFD 126 × 126 = 15,876 Ұшақтағы жалпы саны 220 × 220 = 48,400 TRON кодтық нүктелері "X YYYY" түрінде белгіленеді, мұнда "X" – ондық сандағы ұшақ нөмірі, ал "YYYY" – ондық сандағы кодтық нүкте. Сондай-ақ, "NN" – тілдік спецификацияның екінші байты болатын "0xNNYYYY" белгісін де қолдануға болады. ASCII мәтінінде TRON кодтық нүктесін көрсету үшін "&TNNYYYY;" мәтіндік форматын пайдалануға болады, бұл HTML, SGML немесе XML-дегі сандық таңба сілтемелеріне ұқсас. Дегенмен, стандартты және сәйкесті HTML немесе XML анализаторы оларды UCS-дегі жарамды және бірегей кодтық нүктелер тізбегіне тікелей және оңай түрлендіре алмайды, оларды анықтау үшін кеңейтілген DTD қажет болады (мысалы, TRON-ға арналған жеке пайдалану таңбаларын немесе UCS-дегі бірдей таңба ретінде көрсетілген әртүрлі TRON таңбаларын кодтау үшін Unicode вариация таңдауларын қолдану арқылы). TRON мәтін форматын UCS-дегі стандартты UTF форматымен өзара әрекеттесетіндей ету үшін басқа SGML-негізделген анализатор қажет болады.
TRON code points are notated as "X YYYY", where "X" is the plane number in decimal and "YYYY" is the code point in hexadecimal. Alternatively, the notation "0xNNYYYY" can be used, where "NN" is the second byte in hexadecimal of the language specifier code. A text format "&TNNYYYY;" can be used to denote a TRON code point in ASCII text, in a similar manner to numeric character references in HTML, SGML or XML. However, a standard and conforming HTML or XML parser would treat them as named entities, that can't be directly and easily mapped to valid and unambiguous sequences of code points in the UCS, without an extensive DTD to define them (possibly by using some private use characters for TRON escapes, or Unicode variation selectors mapped to TRON characters for encoding different TRON characters represented as the same character in the UCS): a different SGML based parser will be needed to support the TRON text format in a way interoperable with standard UTF's for the UCS.
Тілдерді анықтау кодтары
Тілдік белгі кодтары 0xFE префиксімен беріледі. Жарамды жұрнақтар 0x21-ден 0x7E-ге дейін (1-ден 94-ке дейінгі жазықтықтарға сілтеме жасайды) және 0x80-ден 0xFE-ге дейін (келешек жазықтықтар үшін) болып табылады, олардың көп бөлігі бөлінбеген.
Арнайы және құтылу кодтары
Арнайы кодтар 0xFF префиксімен басталады.
Ұшақтар
TRON кодында пайдалануға бөлінген жазықтықтар, олардың тілдік белгілеу кодтары және әрбір жазықтықтағы таңбалар жиынтығының сипаттамасы төменде келтірілген. Жазық Тілдік белгілеу коды Сипаттама1FE 21JIS X 0208, JIS X 0212, JIS X 0213, GB 2312, KS X 1001 және Брайль2FE 22GT Қаріптік таңбалар3FE 23GT Қаріптік таңбалар жалғастырылды6FE 26Big58FE 28Dai Kan Wa Jiten таңбалары9FE 29Dai Kan Wa Jiten жалғастырылды, хентаигана және әр түрлі таңбалар10FE 2AСирек қолданылатын жазу жүйелері (Донгба символдары)16FE 30Unicode 2.0 (CJK Бірыңғай және Хангульді қоспағанда)17FE 31Unicode 2.0 (CJK Бірыңғай және Хангульді қоспағанда) жалғастырылды22FE 36GB 1803023FE 37GB 18030 жалғастырылды
11-ден 15-ке дейінгі жазықтықтар бастапқыда Mojikyō таңбалар жиынтығын сақтау үшін бөлінген, бірақ туындаған даулар осы жазықтықтардың алынып тасталуына әкелді. 31-ге дейінгі барлық басқа жазықтықтар қазіргі таңдақта болашаққа бөлу үшін резервтеліп қойылған.