Identificador de un conjunto de caracteres codificados
Un CCSID ( identificador de conjunto de caracteres codificados ) es un número de 16 bits que representa una codificación particular de una página de códigos específica . Por ejemplo, Unicode es una página de códigos que tiene varios esquemas de codificación de caracteres (denominados "formas de transformación"), incluidos UTF-8 , UTF-16 y UTF-32 , pero que pueden o no estar acompañados por un número CCSID para indicar que se está utilizando esta codificación.
Diferencia entre una página de códigos y un CCSID
Los términos página de códigos y CCSID suelen utilizarse indistintamente, aunque no sean sinónimos. Una página de códigos puede ser solo una parte de lo que constituye un CCSID. Las siguientes definiciones de IBM ayudan a ilustrar este punto:
- Un glifo es el patrón físico real de píxeles o tinta que aparece en una pantalla o impresión.
- Un carácter es un concepto que abarca todos los glifos asociados a un símbolo determinado. Por ejemplo, "F", " F ", " F ", " F ", " F", " F " y " F " son todos glifos diferentes, pero utilizan el mismo carácter. Los distintos modificadores (negrita, cursiva, subrayado, color y fuente) no modifican la esencia de la F.
- Un conjunto de caracteres contiene los caracteres necesarios para permitir que un ser humano en particular lleve a cabo una interacción significativa con la computadora. No especifica cómo se representan esos caracteres en una computadora. [1] Este nivel es el primero en separar los caracteres en varios alfabetos (latino, árabe, hebreo, cirílico, etc.) o grupos ideográficos (por ejemplo, chino, coreano). Corresponde a un "repertorio de caracteres" en el modelo de codificación Unicode .
- Una página de códigos representa una asignación particular de valores de puntos de código a caracteres. [1] Corresponde a un "conjunto de caracteres codificados" en el modelo de codificación Unicode. Un punto de código para un carácter es la representación interna de la computadora de ese carácter en una página de códigos dada. [1] Muchos caracteres están representados por diferentes puntos de código en diferentes páginas de códigos. Ciertos conjuntos de caracteres pueden representarse adecuadamente con páginas de códigos de un solo byte (que tienen un máximo de 256 puntos de código, por lo tanto, un máximo de 256 caracteres), pero muchos requieren más que eso. Algunos ejemplos incluyen JIS X 0208 y Unicode .
- Un esquema de codificación es el formato de bytes de una página de códigos. Asigna valores de puntos de código a secuencias de uno o más valores de bytes en una computadora. [2] Por ejemplo, UTF-8 y UTF-16BE son dos codificaciones de la misma página de códigos Unicode. (Varían solo en la cantidad de bytes necesarios para representar un valor de carácter Unicode particular, cómo está contenido dentro de esos bytes y cómo se indica la presencia de información Unicode). Mientras tanto, en la arquitectura de representación de datos de caracteres (CDRA) de IBM, esto generalmente se representa con un ESID (identificador de esquema de codificación). [3] EUC e ISO-2022 son otros ejemplos de esquemas de codificación.
- Un identificador de conjunto de caracteres codificados ( CCSID ) contiene toda la información necesaria para asignar y preservar el significado y la representación de caracteres a través de varias etapas de procesamiento e intercambio. Esta información siempre incluye al menos una página de códigos, pero puede incluir varias páginas de códigos de diferentes longitudes de bytes. El CCSID también tiene un esquema de codificación asociado que rige cómo se deben manejar los distintos puntos de código. Este mecanismo permite que un programa reconozca la orientación bidireccional , la forma de los caracteres (principalmente de los caracteres árabes) y otra información de codificación compleja.
Ejemplos
Los siguientes ejemplos muestran cómo algunos CCSID se componen de otros CCSID.
Los tres CCSID Shift-JIS variantes son conjuntos de caracteres multibyte (MBCS): la parte del conjunto de caracteres de un solo byte (SBCS) de cada CCSID es diferente. La parte del conjunto de caracteres de doble byte (DBCS) es la misma en todos los CCSID. El CCSID 5028 utiliza una página de códigos 897 actualizada denominada CCSID 4993. El CCSID 932 utiliza la página de códigos 897 original, que es el CCSID 897. El CCSID 942 utiliza un SBCS diferente al de los otros dos CCSID, que es el 1041.
Observe también cómo los CCSID 5028 y 4993 difieren en 4096 (1000 en hexadecimal) del CCSID anterior con el mismo identificador de página de códigos. Esta es una forma habitual en que CDRA denota un CCSID actualizado.
Hay algunas razones para esta complejidad:
- Muchos de los CCSID se utilizan en bases de datos IBM, como IBM Db2 , donde un campo de base de datos solo admite una cadena SBCS, DBCS o MBCS. Los CCSID permiten que los programas diferencien cuál se está utilizando.
- Cuando se añaden o reemplazan caracteres, como en el caso de la introducción del símbolo del euro, se puede saber si las cadenas almacenadas admiten o no la incorporación de esos caracteres porque se está utilizando un CCSID diferente. Esta creación de versiones es importante para la integridad de los datos.
- Permite la reutilización de recursos entre CCSID similares. [7]
Referencias
- ^ abc "Terminología IBM: Términos C". IBM . Consultado el 25 de enero de 2013 .
- ^ "Arquitectura de representación de datos de caracteres". IBM . Apéndice A. Esquemas de codificación . Consultado el 29 de junio de 2019 .
- ^ "Character Data Representation Architecture". IBM . Capítulo 3. Identificadores CDRA, sección "Long-Form Identification" . Consultado el 29 de junio de 2019 .
- ^ "Datos mixtos de PC japoneses, incluido el UDC 1880". Globalización . IBM. Archivado desde el original el 20 de febrero de 2012 . Consultado el 29 de noviembre de 2011 .
- ^ "Datos mixtos de PC japoneses, incluidos 1880 UDC y SBCS ampliado". Globalización . IBM. Archivado desde el original el 1 de diciembre de 2014 . Consultado el 29 de noviembre de 2011 .
- ^ "Datos de PC japoneses combinados, incluidos 1880 UDC (Katakana - conjunto común de PC para SBCS)". Globalización . IBM. Archivado desde el original el 29 de noviembre de 2014 . Consultado el 29 de noviembre de 2011 .
- ^ "Us-en_software_HP". 9 de noviembre de 2020.
Enlaces externos
- Glosario de términos de IBM CDRA (arquitectura de representación de datos de caracteres)
- Terminología de globalización de IBM
- Descripción completa de IBM CDRA. (Incluye una descripción más detallada de la arquitectura que rodea a los CCSID).
- Lista completa de IBM de CCSID y otros identificadores relacionados
- Lista de CCSID admitidos en el sistema IBM System i