Diferencia entre revisiones de «ISO/IEC 10646»

3511 bytes añadidos ,  hace 14 años
 
Otra codificación es la '''[[UCS-4]]''' que emplea un caracter único entre 0 y (teoricamente) en hexadecimal hasta 7FFFFFFF para ser asignado a cada caracter (sin embargo el UCS para a 10FFFF y la ISO/IEC 10646 tiene comprometida asignaciones futuras de caracteres en este rango). El UCS-4 permite representaciones de cada valor mediante el empleo exacto de cuatro bytes (una palabra de 32-bits). El UCS-4 permite una representación binaria de cada código punto en el sistema UCS, incluyendo aquellos que están fuera del BMP. Como en el sistema de codifiación de UCS-2, cada caracter codificado posee una longitud fija en bytes.
 
== Historia de la ISO 10646==
The [[International Organization for Standardization]] (ISO) precisó el juego de caracteres en [[1989]] y publicó un borrador denominado ISO 10646 en [[1990]]. [[Hugh McGregor Ross]] fue uno de los principales ideadores y arquitectos de este primer borrador. Aqué standard difiere bastante del actual. Se definían en el primer borrador 128 grupos de 256 planos y cada uno de ellos de 256 columnas y 256 células, con ello se conseguía colocar aparentemente 2,147,483,648 caracteres, pero en la actualidad el estándard puede colocar sólo 679,477,248 caracteres, como las reglas prohiben valores de caracteres de control (0x00 hasta 0x1F y 0x80 hasta 0x9F, en notación [[hexadecimal]]). Por ejemplo la letra A tienen una posición en el grupo 0x20, plano 0x20, columna 0x20, célula 0x41.
 
Se podía cifrar los caracteres de este estándar primordial de la ISO 10646 en una de tres maneras:
# UCS-4, cuatro octetos para cada carácter, permitiendo la codificación simple de todos los caracteres;
# UCS-2, dos octetos para cada carácter, permitiendo la codificación del primer plano, 0x20, el plano multilingüe básico, conteniendo los primeros 36.864 puntos de código, directo, y otros planos y grupos cambiando a ellos con [[ISO 2022]] secuencias de escape;
# [[UTF-1]], que codifica todos los caracteres en secuencias de octetos de longitud que varía (1 a 5 octetos, que no contienen ningún carácter de control).
 
En 1990, salieron a la luz dos iniciativas para crear un conjunto de caracteres universal: [[Unicode]], con 16 bits para cada carácter (65.536 caracteres posibles), e ISO 10646. Las compañías del software rechazaron aceptar el requisito de la complejidad y del tamaño del estándar de ISO y lograron convencer a un número de organismos nacionales de la ISO para que votaran contra él. Los estandarizadores de la ISO convinieron que no podrían continuar apoyando el estándar en su estado actual y que negociarían la unificación de su estándar con Unicode. Ocurrieron dos cambios tras esta situación: el abandono de la limitación sobre los caracteres (prohibición de los valores del carácter de control), los caracteres así de permiso hasta 0x0000101F; y la sincronización del repertorio del plano multilingüe básico con el de Unicode.
 
Mientras tanto, con el paso del tiempo, la situación cambió en el estándar mismo de Unicode: los 65.536 caracteres empezaron a parecer escasos, y el estándar de la versión a partir de la 2.0 realizan la codificación de 1.112.064 caracteres por medio de la codificación [[UTF-16]]. Por esa razón, la ISO 10646 fue limitada para contener tantos caracteres como podían ser codificados por UTF-16, y no más. Es decir, un poco sobre más de un millón de caracteres en vez sobre de 2.000 millones. La codificación UCS-4 de ISO 10646 fue incorporada en el estándar de Unicode con la limitación a la gama UTF-16 y bajo el nombre de [[UTF-32]]. En cuanto a UTF-1, nadie lo empleó, debido en parte a su mala codificación del diseño (no existía forma de distinguir entre la funcionalidad de los octetos, un problema similar a la codificiación [[Shift-JIS]] del japonés) y su degradación de las prestaciones (muchas operaciones de división). [[Rob Pike]] y [[Ken Thompson|Ken a Thompson]], los diseñadores el plan 9 de Bell Labs del sistema operativo, idearon uno nuevo, rápidamente y la codificación mezclada bien diseñada de la anchura, que vinieron ser llamadas [[UTF-8]].
 
==Campo de Aplicaciones y Alcance ==