Юникод пен EBCDIC үйлесімділігі үшін таңбалық кодтау
UTF-EBCDIC
UTF-EBCDIC: Unicode кодындағы мәліметтерді EBCDIC жүйесімен үйлестіретін кодтау. 1-5 байтты қолданады, бұрынғы жүйелермен оңай өңделеді. Толық ақпарат – Unicode Техникалық есептеме.
Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Unicode үшін таңба кодтамасы, EBCDIC-пен үйлесімді
Character encoding for Unicode compatible with EBCDIC
UTF EBCDIC – бұл 1 байттан 5 байтқа дейін (UTF-8 үшін максималды 4 байттан айырмашылығы) Unicode-тағы барлық 1,112,064 жарамды таңба кодтық нүктені кодтай алатын таңба кодтамасы. Ол EBCDIC-ке бейімделген, сондықтан мейнфреймдердегі EBCDIC-тің ескі қолданбалары таңбаларды көп қиындықсыз өңдей алады. Оның EBCDIC негізіндегі қолданыстағы жүйелер үшін артықшылықтары, UTF-8-дің ASCII негізіндегі қолданыстағы жүйелер үшін артықшылықтарына ұқсас. UTF EBCDIC туралы толық мәліметтер Unicode Техникалық есебі #16-да келтірілген. Unicode кодтық нүктелер тізбегінің UTF EBCDIC кодталған нұсқасын жасау үшін алдымен UTF-8 негізіндегі кодтау қолданылады (спецификацияда UTF 8 Mod деп аталады), бұл спецификацияда I8 тізбегі деп аталады. Бұл кодтау мен UTF-8 арасындағы басты айырмашылық – ол Unicode кодтық нүктелерін (C1 басқару кодтары) бір байт ретінде көрсетуге және оларды тиісті EBCDIC басқару кодтарына сәйкестендіруге мүмкіндік береді. Осыған қол жеткізу үшін UTF 8 Mod көп байтты тізбектегі соңғы байттар үшін орнына қолданылады. Бұл тек 5 битті сақтай алады, ал 6 емес, сондықтан жоғарыда көрсетілген кодтық нүктелердің UTF 8 Mod кодтамасы UTF 8 кодтамасынан үлкен. UTF 8 Mod түрлендіруі деректерді ASCII негізіндегі форматта қалдырады (мысалы, "A" әлі де ретінде кодталады), сондықтан әрбір байт кері (бірден-бірге) іздеу кестесі арқылы өтіп, соңғы UTF EBCDIC кодтамасын құрайды. Мысалы, осы кестеде кескіштің мәніне сәйкес келеді; демек, UTF EBCDIC кодтамасы (Unicode-тың "A" әрпі) – (EBCDIC-тің "A" әрпі). UTF EBCDIC сирек қолданылады, тіпті оған арналған EBCDIC негізіндегі мейнфреймдерде де. IBM EBCDIC негізіндегі z/OS сияқты операциялық жүйелер, әдетте, толық Unicode қолдау үшін UTF 16-ны пайдаланады. Мысалы, IBM Db2, COBOL, PL/I, Java және IBM XML құралдары IBM мейнфреймдерінде UTF 16 қолдауын қамтамасыз етеді.
UTF EBCDIC is a character encoding capable of encoding all 1,112,064 valid character code points in Unicode using 1 to 5 bytes (in contrast to a maximum of 4 for UTF 8). It is meant to be EBCDIC friendly, so that legacy EBCDIC applications on mainframes may process the characters without much difficulty. Its advantages for existing EBCDIC based systems are similar to UTF 8's advantages for existing ASCII based systems. Details on UTF EBCDIC are defined in Unicode Technical Report #16. To produce the UTF EBCDIC encoded version of a series of Unicode code points, an encoding based on UTF 8 (known in the specification as UTF 8 Mod) is applied first (creating what the specification calls an I8 sequence). The main difference between this encoding and UTF 8 is that it allows Unicode code points through (the C1 control codes) to be represented as a single byte and therefore later mapped to corresponding EBCDIC control codes. In order to achieve this, UTF 8 Mod uses instead of as the format for trailing bytes in a multi byte sequence. As this can only hold 5 bits rather than 6, the UTF 8 Mod encoding of codepoints above are larger than the UTF 8 encoding. The UTF 8 Mod transformation leaves the data in an ASCII based format (for example, "A" is still encoded as ), so each byte is fed through a reversible (one to one) lookup table to produce the final UTF EBCDIC encoding. For example, in this table maps to ; thus the UTF EBCDIC encoding of (Unicode's "A") is (EBCDIC's "A"). UTF EBCDIC is rarely used, even on the EBCDIC based mainframes for which it was designed. IBM EBCDIC based mainframe operating systems, such as z/OS, usually use UTF 16 for complete Unicode support. For example, IBM Db2, COBOL, PL/I, Java and the IBM XML toolkit support UTF 16 on IBM mainframes.
Код бетінің макетін құру
UTF EBCDIC-те бір байттық кодтамасы бар 160 символ бар (UTF 8-де 128 символмен салыстырғанда). Көрініп тұрғанындай, бір байттық бөлігі квадрат жақшалардың орналасуына байланысты IBM 37 емес, IBM 1047-ге ұқсас. CCSID 37-де тіктөртбұрышты жақшалар BA және BB гексада, ал IBM 1047-де AD және BD гексада орналасқан.
There are 160 characters with single byte encodings in UTF EBCDIC (compared to 128 in UTF 8). As can be seen, the single byte portion is similar to IBM 1047 instead of IBM 37 due to the location of the square brackets. CCSID 37 has [] at hex BA and BB instead of at hex AD and BD respectively.
Oracle UTFE (Оракулдың UTFE)
Oracle UTFE – Unicode 3.0 UTF-8 Oracle дерекқорының нұсқасы, UTF-8 CESU-8 нұсқасына ұқсас, онда қосымша әріптер бір 4 немесе 5 байттық әріп орнына екі 4 байттық әріп ретінде кодталады. Ол тек EBCDIC платформаларында қолданылады.
Oracle UTFE is a Unicode 3.0 UTF 8 Oracle database variation, similar to the CESU 8 variant of UTF 8, where supplementary characters are encoded as two 4 byte characters rather than a single 4 or 5 byte character. It is used only on EBCDIC platforms.