Articulo de referencia

UTF-EBCDIC

UTF-EBCDIC es un sistema de codificación de caracteres capaz de codificar los 1.112.064 puntos de código de caracteres válidos en Unicode utilizando de 1 a 5 bytes (en contraste...

UTF-EBCDIC es un sistema de codificación de caracteres capaz de codificar los 1.112.064 puntos de código de caracteres válidos en Unicode utilizando de 1 a 5 bytes (en contraste con un máximo de 4 para UTF-8 ). [1] Está pensado para ser compatible con EBCDIC , de modo que las aplicaciones EBCDIC heredadas en mainframes puedan procesar los caracteres sin mucha dificultad. Sus ventajas para los sistemas existentes basados ​​en EBCDIC son similares a las ventajas de UTF-8 para los sistemas existentes basados ​​en ASCII . Los detalles sobre UTF-EBCDIC se definen en el Informe técnico Unicode n.° 16.

Para producir la versión codificada en UTF-EBCDIC de una serie de puntos de código Unicode, primero se aplica una codificación basada en UTF-8 (conocida en la especificación como UTF-8-Mod) (creando lo que la especificación llama una secuencia I8). La principal diferencia entre esta codificación y UTF-8 es que permite que los puntos de código Unicode U+0080 a U+009F (los códigos de control C1 ) se representen como un solo byte y, por lo tanto, se asignen posteriormente a los códigos de control EBCDIC correspondientes. Para lograr esto, UTF-8-Mod utiliza 101xxxxx en lugar de 10xxxxxx como formato para los bytes finales en una secuencia de varios bytes. Como esto solo puede contener 5 bits en lugar de 6, la codificación UTF-8-Mod de los puntos de código por encima de U+03FF es más grande que la codificación UTF-8.

La transformación UTF-8-Mod deja los datos en un formato basado en ASCII (por ejemplo, U+0041 "A" todavía se codifica como 0x41 ), por lo que cada byte se introduce en una tabla de búsqueda reversible (uno a uno) para producir la codificación UTF-EBCDIC final. Por ejemplo, 0x41 en esta tabla se asigna a 0xC1 ; por lo tanto, la codificación UTF-EBCDIC de U+0041 ("A" de Unicode) es 0xC1 ("A" de EBCDIC).

El formato UTF-EBCDIC rara vez se utiliza, incluso en los mainframes basados ​​en EBCDIC para los que fue diseñado. Los sistemas operativos de mainframe basados ​​en EBCDIC de IBM , como z/OS , suelen utilizar UTF-16 para una compatibilidad completa con Unicode. Por ejemplo, IBM Db2 , COBOL , PL/I , Java y el kit de herramientas XML de IBM admiten UTF-16 en mainframes de IBM.

Disposición de la página de códigos

Hay 160 caracteres con codificaciones de un solo byte en UTF-EBCDIC (en comparación con 128 en UTF-8). Como se puede ver, la porción de un solo byte es similar a IBM-1047 en lugar de IBM-37 debido a la ubicación de los corchetes. El CCSID 37 tiene [] en BA y BB hexadecimales en lugar de AD y BD hexadecimales respectivamente.

  Bytes iniciales para una secuencia de esa cantidad de bytes. La información sobre herramientas muestra el punto de código más bajo codificado con ese byte inicial.
  Byte de inicio donde no todas las combinaciones de bytes de continuación son válidas, ya sea porque es una forma demasiado larga no válida (la información sobre herramientas muestra el punto de código de la primera secuencia válida) o porque codifica un punto de código mayor que U+10FFFF.
  Bytes de continuación. La información sobre herramientas muestra el valor hexadecimal de los 5 bits que se suman.
  Sin usar, incluidos los bytes iniciales que solo pueden iniciar una forma demasiado larga no válida. Por ejemplo, 0x76 porque incluso 0x76 0x73 (que se asigna a la secuencia UTF-8-Mod 0xC2 0xBF) sería simplemente una codificación demasiado larga de U+005F (codificada correctamente como UTF-8-Mod 0x5F, UTF-EBCDIC 0x6D).

Oráculo UTFE

Oracle UTFE es una variación de la base de datos Oracle Unicode 3.0 UTF-8 , similar a la variante CESU-8 de UTF-8, donde los caracteres complementarios se codifican como dos caracteres de 4 bytes en lugar de un único carácter de 4 o 5 bytes. Se utiliza únicamente en plataformas EBCDIC. [2]

Véase también

Referencias

  1. ^ "UTR #16: UTF-EBCDIC". www.unicode.org . Consultado el 23 de febrero de 2021 . Debe buscar como máximo cinco bytes (siete bytes, si se considera el rango completo de 31 bits de ISO/IEC 10646) hacia atrás
  2. ^ Baird, Cathy; Chiba, Dan; Chu, Winson; Fan, Jessica; Ho, Claire; Law, Simon; Lee, Geoff; Linsley, Peter; Matsuda, Keni; Oscroft, Tamzin; Takeda, Shige; Tanaka, Linus; Tozawa, Makoto; Trute, Barry; Tsujimoto, Mayumi; Wu, Ying; Yau, Michael; Yu, Tim; Wang, Chao; Wong, Simon; Zhang, Weiran; Zheng, Lei; Zhu, Yan; Moore, Valarie (2002) [1996]. "Apéndice A: Datos de configuración regional". Oracle9i Database Globalization Support Guide (PDF) (versión 2 (9.2) ed.). Oracle Corporation . Oracle A96529-01. Archivado (PDF) desde el original el 2017-02-14 . Consultado el 2017-02-14 .
  • VS Umamaheswaran, Informe técnico Unicode n.° 16: la definición de UTF-EBCDIC (16 de abril de 2002)
Retrieved from "https://en.wikipedia.org/w/index.php?title=UTF-EBCDIC&oldid=1222414866"