Varios métodos de codificación comunes para caracteres
Ya sea que esté editando un archivo de texto o creando una página web, siempre encontrará problemas de codificación de texto. Si no se maneja adecuadamente, aparecerán caracteres confusos. Por tanto, es necesario tener una comprensión detallada de cómo se codifica el texto.
Algunos métodos comunes de codificación de caracteres son: Unicode, ASCII, GBK, GB2312, UTF-8. La siguiente es una explicación de estos métodos comunes de codificación de caracteres:
1. Código ASCII
Estos son los Estados Unidos en la década de 1860 para establecer la relación entre los caracteres ingleses y los binarios. La especificación de codificación formulada en ese momento puede representar 128 caracteres, incluidos caracteres en inglés, números arábigos, caracteres en español y 32 caracteres de control. Utiliza un byte para representar un carácter específico, pero solo usa los últimos 7 bits para representar el carácter (2^7=128), y el primer bit se establece uniformemente en 0.
2. Código ASCII extendido
El código ASCII original es suficiente para los países de habla inglesa, pero algunos idiomas en los países europeos tienen pinyin, que tiene 7 bytes. Por lo tanto, algunos países europeos decidieron utilizar los bits más altos inactivos de los bytes para codificar nuevos símbolos. Por ejemplo, la codificación de é en francés es 130 (binario 10000010). Como resultado, el sistema de codificación utilizado por estos países europeos puede representar hasta 256 símbolos. Pero también surge un problema en este momento: diferentes países tienen letras diferentes, por lo que incluso si todos usan un método de codificación de 256 símbolos, las letras que representan son diferentes. Por ejemplo, 130 representa é en codificación francesa, representa la letra Gimel (?) en codificación hebrea y representa otro símbolo en codificación rusa. Pero pase lo que pase, en todos estos métodos de codificación, los símbolos representados por 0-127 son los mismos, la única diferencia es la sección 128-255. Este problema impulsó directamente la creación de la codificación Unicode.
3. Conjunto de símbolos Unicode
Como se mencionó en la sección anterior, existen muchos métodos de codificación en el mundo y el mismo número binario se puede interpretar en diferentes símbolos. Por lo tanto, si desea abrir un archivo de texto, debe conocer su método de codificación; de lo contrario, si utiliza el método de codificación incorrecto para interpretarlo, aparecerán caracteres confusos. ¿Por qué los correos electrónicos suelen ser confusos? Esto se debe a que el remitente y el destinatario utilizan diferentes métodos de codificación. Unicode es una codificación de este tipo: contiene todos los símbolos del mundo y cada símbolo es único. Por ejemplo, U 0639 representa la letra árabe Ain, U 0041 representa la letra mayúscula inglesa A y U 4E25 representa el carácter chino "estricto". Para obtener una tabla de correspondencia de símbolos específica, puede consultar unicode.org o una tabla de correspondencia de caracteres chinos especializada. Mucha gente habla de codificación Unicode, pero en realidad Unicode es un conjunto de símbolos (un conjunto de símbolos de todos los símbolos del mundo), no un nuevo método de codificación.
Pero como Unicode contiene todos los caracteres, los caracteres de algunos países se pueden representar con un byte, mientras que los caracteres de algunos países requieren varios bytes para representarse. Es decir, surgen dos problemas: primero, si hay dos bytes de datos, ¿cómo sabe la computadora que estos dos bytes representan un carácter chino? ¿O significa dos letras inglesas? En segundo lugar, debido a que diferentes caracteres requieren diferentes longitudes de almacenamiento, si Unicode estipula que se usan 2 bytes para almacenar caracteres, entonces el primer byte al almacenar caracteres en inglés es 0, lo que desperdicia mucho espacio de almacenamiento.
Los resultados de los dos problemas anteriores son: 1) Han surgido múltiples métodos de almacenamiento de Unicode, lo que significa que existen muchos formatos binarios diferentes que se pueden usar para representar Unicode. 2) Unicode no pudo promocionarse durante mucho tiempo hasta la aparición de Internet.
4.UTF-8
La popularidad de Internet requiere fuertemente la aparición de un método de codificación unificado. UTF-8 es la implementación Unicode más utilizada en Internet.
Otras implementaciones incluyen UTF-16 y UTF-32, pero básicamente no se utilizan en Internet. Nuevamente, la relación aquí es que UTF-8 es una de las implementaciones de Unicode.
Una de las características más importantes de UTF-8 es que es un método de codificación de longitud variable. Puede utilizar de 1 a 4 bytes para representar un símbolo y la longitud del byte varía según los diferentes símbolos.
Las reglas de codificación de UTF-8 son muy simples, solo hay dos:
1) Para símbolos de un solo byte, el primer bit del byte se establece en 0 y Los siguientes 7 bits son el código Unicode de este símbolo. Entonces, para las letras en inglés, la codificación UTF-8 y el código ASCII son los mismos.
2) Para símbolos de n bytes (ngt; 1), los primeros n bits del primer byte se establecen en 1, el n-ésimo bit se establece en 0 y los dos primeros bits del Los siguientes bytes se establecen en 1. Siempre se establecen en 10. Los bits binarios restantes que no se mencionan son todos el código Unicode de este símbolo.
5.GBK/GB2312/GB18030
GBK y GB2312 codifican caracteres simplificados, pero GB2312 solo admite la codificación de más de 6.000 caracteres chinos, mientras que GBK admite más de 10.000. Codificación de caracteres chinos. GB18030 es la codificación utilizada para los caracteres chinos tradicionales. Los caracteres chinos se almacenan en dos bytes.