Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Кодировка символов для Unicode, совместимая с EBCDIC.
Character encoding for Unicode compatible with EBCDIC
UTF EBCDIC – это кодировка символов, способная кодировать все 1 112 064 допустимых кодовых точек Unicode, используя от 1 до 5 байт (в отличие от максимального значения в 4 байта для UTF-8). Она разработана с учетом совместимости с EBCDIC, чтобы устаревшие приложения EBCDIC на мейнфреймах могли обрабатывать символы без значительных затруднений. Ее преимущества для существующих систем на основе EBCDIC аналогичны преимуществам UTF-8 для существующих систем на основе ASCII. Подробности о UTF EBCDIC описаны в Техническом отчете Unicode № 16. Для создания UTF EBCDIC-кодированной версии последовательности кодовых точек Unicode сначала применяется кодировка на основе 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 символа (буква "A" в Unicode) – (буква "A" в EBCDIC). UTF EBCDIC используется редко, даже на мейнфреймах, основанных на EBCDIC, для которых она была разработана. Операционные системы IBM на основе EBCDIC, такие как z/OS, обычно используют UTF-16 для полной поддержки Unicode. Например, IBM Db2, COBOL, PL/I, Java и IBM XML toolkit поддерживают UTF-16 на IBM мейнфреймах.
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 символов с однобайтовым кодированием (по сравнению с 128 в UTF-8). Как видно, однобайтовая часть соответствует IBM 1047, а не IBM 37, из-за расположения квадратных скобок. В CCSID 37 квадратные скобки находятся по адресам 0xBA и 0xBB, а не 0xAD и 0xBD соответственно.
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
Oracle UTFE — это вариант базы данных Oracle Unicode 3.0, использующий кодировку UTF-8, аналогичный варианту CESU-8, в котором дополнительные символы кодируются как два 4-байтовых символа вместо одного 4- или 5-байтового символа. Он применяется исключительно на платформах 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.