Código página 37


La página de códigos 37 ( CCSID 37; etiqueta IBM037), [1] conocida como "EE. UU. / Canadá - CECP", es una página de códigos EBCDIC utilizada en mainframes de IBM. Se codifica la ISO / IEC 8859-1 repertorio de caracteres gráficos.

La página de códigos 37 es una de las páginas de códigos EBCDIC más utilizadas y con mejor soporte. Se utiliza como página de códigos de z / OS predeterminada en los Estados Unidos y otros países de habla inglesa. [2] Se considera la página de códigos EBCDIC "requerida" para los Estados Unidos, [3] y también se utiliza en Australia , Nueva Zelanda , los Países Bajos , Portugal y Brasil , y en los sistemas ESA / 390 en Canadá , [4] pero no en los sistemas canadienses AS / 400 , que utilizan la página de códigos 500 en su lugar. [5]Es una de las cuatro páginas de códigos EBCDIC (junto con 500, 875 y 1026) con datos de mapeo proporcionados por Microsoft al Consorcio Unicode , [6] y una de siete (junto con 273, 424, 500, 875, 1026 y 1140 ) compatibles con Python como estándar. [7]

Dado que CP 037 contiene todos los caracteres latin-1 estándar, es posible traducir los códigos de caracteres del juego de caracteres CP 037 a códigos de caracteres ISO 8859-1 , de modo que la traducción al juego de caracteres CP 037 sea una ronda exacta de preservación del valor. -conversión de viaje . Asimismo, la mitad de los códigos de caracteres de control se pueden traducir a sus equivalentes ASCII exactos . Si el resto de los caracteres de control únicamente EBCDIC se traducen (arbitrariamente) en los puntos restantes de códigos ASCII no utilizados (hexadecimal 80 a 9F), la traducción resultante cubre todos los 256 puntos de código de caracteres. A continuación se muestra una tabla de traducción de este tipo:

Las posiciones del signo de intercalación ( ^) y no del signo ( ¬), aunque oficialmente B0 hex y 5F hex respectivamente, a veces se cambian, incluso cuando se usan con APL en el sistema 3279. Esta variante ha sido reconocida por SHARE , pero IBM no la ha designado oficialmente como página de códigos y, en ocasiones, el software de transcodificación la denomina página de códigos 37-2 . [10]

Existen varias otras páginas de códigos, que equivalen a la página de códigos 37 con algunos caracteres intercambiados. En particular, la página de códigos 37 codifica los corchetes ( []) en BA hex y BB hex , mientras que otras variantes usan otras codificaciones para los corchetes. Por ejemplo, la página de códigos 1047 es una variante utilizada por el compilador MVS Open Systems. [11] Se diferencia de la página de códigos 37 en seis posiciones: Ýy [cambia de lugar, al igual que ¨y ], colocando los corchetes en AD hex y BD hex ; el signo de intercalación y el signo no también cambian de lugar, como en la página de códigos 37-2. [12] [13]Esta codificación de los corchetes se heredó del sistema de visualización 3270. [10] Aunque IBM tiene la intención de que la página de códigos 1047 se utilice solo para cumplir requisitos específicos, y no como un reemplazo de las páginas de códigos 37 y 500, [3] el subconjunto de la página de códigos 1047 que codifica el repertorio ASCII se usó para el byte único códigos gráficos en UTF-EBCDIC . [11]

La página de códigos 500 , conocida como "International EBCDIC", [5] "International Latin-1" o "International Number 5", [10] es la otra codificación EBCDIC importante para el repertorio ISO / IEC 8859-1. Se utiliza en Bélgica , Suiza y en sistemas AS / 400 en Canadá . [5] Está relacionado con la página de códigos 37 y tiene el mismo repertorio, pero difiere en siete posiciones; en particular, codifica [y ]en 4A hexadecimal y 5A hexadecimal respectivamente, que se utilizan para el signo de centavo ( ¢) y el signo de exclamación ( !) en la página de códigos 37. El signo de intercalación (^) también se codifica en 5F hexadecimal , de manera similar a la página de códigos 37-2 y 1047. El ¢se codifica en B0 hexadecimal , ¬en BA hexadecimal , !en 4F hexadecimal y el carácter de barra vertical ( |) en BB hexadecimal . [14] [15] La página de códigos 500 está a su vez relacionada con la página de códigos alemana 273 , que intercambia varios pares de caracteres de una manera correspondiente a las diferencias entre DRV8 e ISO / IEC 8859-1, lo que da como resultado la colocación de los corchetes en 63 hex y FC hex . [dieciséis]