Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Qué son los caracteres Unicode?

¿Qué son los caracteres Unicode?

UNICODE hace que los caracteres en cualquier idioma sean más fácilmente aceptados por las máquinas. UNICODE es administrado por UC (Asociación UNICODE) y acepta sus modificaciones técnicas. Los estándares técnicos, incluidos JAVA, LDAP y XML, requieren compatibilidad con UNICODE. Los caracteres de UNICODE se denominan puntos de código (CODE POINTS), representados por U seguido de XXXX, donde X es un carácter hexadecimal.

Para inglés, el código ASCII 0-127 es suficiente para codificar todos los caracteres. Para chino, se deben usar dos bytes (bytes) para representar un carácter y el primer byte debe ser mayor que 127 (por lo que tenemos. muchos programas juzgan el chino basándose en la condición de que el código ASCII sea mayor que 127). El método anterior de utilizar dos bytes para representar un carácter chino se denomina habitualmente de doble byte (es decir, DBCS: juego de caracteres de doble byte). En cambio, el código de caracteres en inglés se denomina SBCS de un solo byte (juego de caracteres de un solo byte).

Aunque el doble byte (DBCS) es suficiente para resolver el uso mixto de caracteres chinos e ingleses, para diferentes sistemas de caracteres se debe realizar la conversión del código de caracteres, lo cual es muy problemático. Por ejemplo: mezcla de chino e inglés, japonés, coreano, etc. Para resolver este problema, la Organización Internacional de Normalización estableció el grupo de trabajo ISO/IEC JTC1/SC2/WG2 en abril de 1984. Codificación uniforme de caracteres y símbolos de varios países. En 1991, una empresa multinacional estadounidense creó el Consorcio Unicode. Y llegó a un acuerdo con el WG2 en octubre de 1991. Utilice el mismo juego de caracteres de codificación. Unicode actualmente utiliza un sistema de codificación de 16 bits. El contenido de su juego de caracteres es el mismo que el BMP (plano multilingüe básico) de ISO10646. Unicode pasó DIS (Draf International Standard) en junio de 1992. La versión actual V2.0 fue lanzada en 1996. El contenido contiene 6811 símbolos. Hay 20.902 caracteres chinos. Hay 11.172 caracteres pinyin coreanos. Hay 6.400 áreas de creación de personajes. 20249 reservado. *** Total 65534.

Con el rápido desarrollo de Internet internacional. Existe una demanda creciente de intercambio de datos. Los diferentes sistemas de codificación se convierten cada vez más en obstáculos para el intercambio de información. Además, el número de documentos almacenados en varios idiomas sigue aumentando. Es difícil resolver estos problemas sólo con páginas de códigos. Así nació UNICODE.

UNICODE tiene un doble significado. En primer lugar, UNICODE es el nombre de la codificación estándar internacional ISO/IEC10646 (ISO/IEC10646 es un estándar internacional. También conocido como conjunto de caracteres grandes. Es un estándar internacional importante promulgado por ISO en 1993. Su propósito es cubrir todos los idiomas del mundo. Además, es el nombre de un grupo alianza compuesto por grandes empresas como HP, Microsoft, IBM y Apple en Estados Unidos. El propósito de establecer este grupo es promover la codificación unificada de múltiples idiomas.

La diferencia más significativa entre UNICODE y las páginas de códigos populares actuales es que UNICODE es una codificación completa de dos bytes. También utiliza representación de dos bytes para caracteres ASCII. La página de códigos determina el carácter ASCII a través del rango de valores del byte alto. O el byte alto de los caracteres chinos. Si se produce corrupción de datos. El contenido está roto en alguna parte. Causará confusión en los caracteres chinos posteriores. UNICODE siempre usa dos bytes para representar un carácter. El beneficio más obvio es que simplifica el procesamiento de caracteres chinos.

UNICODE utiliza planos para describir el espacio de codificación. Cada avión está dividido en 256 filas. 256 columnas. En relación con los dos bytes alto y bajo de la codificación de dos bytes.

El primer plano de UNICODE. Se llama Plano Multilingüe Básico. Abreviado como BMP. Dado que BMP está representado por solo dos bytes. Por eso es muy popular.

El objetivo original de Unicode. Se utiliza una codificación de 16 bits para proporcionar mapeo de más de 65.000 caracteres. Pero esto no es suficiente. No puede abarcar todos los textos históricos.

Tampoco puede resolver el problema de transmisión (dolor de cabeza por implantación). Especialmente en aquellas aplicaciones basadas en web. por lo tanto. Unicode ha desarrollado tres conjuntos de métodos de codificación con algunos caracteres reservados básicos. Son UTF-8, UTF-16 y UTF-32 respectivamente. Tal como sugiere el nombre. En UTF-8. Los caracteres están codificados como secuencias de 8 bits. Utilice uno o más bytes para representar un carácter. El mayor beneficio de este enfoque. Es UTF-8 el que conserva la codificación de caracteres ASCII como parte del mismo. Por ejemplo. En UTF-8 y ASCII. La codificación de "A" es 0x41. UTF-16 y UTF-32 son los métodos de codificación Unicode de 16 y 32 bits respectivamente. Tenga en cuenta el propósito original. Unicode suele referirse a UTF-16.

Con el paso de los años. Las computadoras generalmente usan el Código Estándar Americano para el Intercambio de Información (código ASCII para abreviar) para representar caracteres. Estos caracteres pueden ser letras. número. Caracteres de puntuación y control. No es un problema utilizar esta codificación para representar caracteres, incluido el inglés. Pero para expresar otros lenguajes como. Árabe. Chino. Japonés. Viviana. Havin...debe ampliarse. en 1987. Joe Becker y Lee Collins del Centro de Investigación Xerox Palo Alto. Y Mark Davis de Apple está intentando investigar una codificación de caracteres adecuada para el procesamiento en varios idiomas. Esta codificación rápidamente obtuvo el apoyo de muchas grandes empresas. Estas empresas envían representantes para participar en el Grupo de Investigación Unicode. La investigación de Unicode ha avanzado rápidamente. Porque los miembros del Grupo Unicode son los principales fabricantes de sistemas y software del mundo. Así que Unicode rápidamente se convirtió en el estándar industrial de facto.

Los sistemas basados ​​en Unicode permiten 65.000 caracteres diferentes. Suficiente para abarcar todas las letras de todos los idiomas del mundo. Además de miles de símbolos.

Entre ellos. El área de Scripts generales contiene por separado 19 idiomas. Incluyendo ASCII, latín1, griego, cirílico, armenio, hedrew, árabe, devanagari, bengalí, gurmukhi, gujarati, oriya, tamil, telugu, kannada, malayalam, tailandés, laosiano, tibetano, georgiano y otros idiomas. También incluye chino. Todos los caracteres masivos en japonés y coreano.

Unicode es una codificación de conjunto de caracteres multilingüe 2B de longitud fija. Intenta cubrir las normas nacionales y regionales pertinentes existentes. Incluyendo GB2312, CNS11643, JIS 0208 y KSC 5601, etc. Unicode puede representar datos de texto mixtos. También se garantiza la norma ISO 10646 anterior.

Las características de Unicode son:

No importa qué código de caracteres del país esté representado por dos Bytes, por ejemplo, "A" en Unicode es una combinación de 41 y 00 hexadecimal. es, 4100, el bit alto es 41 (convertido a código Ascii, que es 65 = A). Windows NT/2000 usa Unicode para representar el juego de caracteres. Por ejemplo, puede ver que el archivo SQL generado en MS SQL Server puede. elija si desea guardarlo en Unicode o en Guárdelo en formato normal. Si lo guarda en Unicode, muchos programas en la plataforma 95/98 no podrán leer su formato correctamente.

Al mismo tiempo, también puedes notar que en las definiciones de API en 95/98, muchos nombres tienen una A al final, como

WriteProfileStringA

Y en NT/2000 El sistema operativo proporciona dos conjuntos de API. El otro comando es WriteProfileStringW. La API que termina en W solo se aplica a NT/2000.

(Usar funciones API que terminan en W en NT es más rápido que usar funciones API que terminan en A, porque se omite el proceso de conversión entre Unicode y DBCS/SBCS)

De esta manera, a menudo lo usamos para determinar el longitud de una cadena, los resultados de la ejecución son diferentes en NT y 95/98, de la siguiente manera: (El siguiente código es adecuado para VB, ASP)

En 95/98:

len("abcChina" ) devuelve 7 (porque cada carácter chino se ve como dos códigos Ascii)

NT/2000:

len("abcChina") devuelve 5 (porque cada carácter visto como Unicode)