Unicode
Unicode è un sistema di codifica che assegna un numero univoco ad ogni carattere usato per la scrittura di testi, in maniera indipendente dalla lingua, dalla piattaforma informatica e dal programma utilizzati. Unicode è stato compilato e viene aggiornato e pubblicizzato dal Unicode Consortium[1], un consorzio internazionale di aziende interessate alla interoperabilità nel trattamento informatico dei testi in lingue diverse.
Il codice assegnato al carattere[2] viene rappresentato con U+, seguito dalle quattro (o sei) cifre esadecimali del numero che lo individua.
Unicode incorpora, nella primissima parte, la codifica ISO/IEC 8859-1 [3], ma va molto oltre, codificando i caratteri usati in quasi tutte le lingue vive e in alcune lingue morte, nonché simboli matematici e chimici, cartografici, l’alfabeto Braille, ideogrammi etc.
Attualmente lo standard Unicode non rappresenta ancora tutti i caratteri in uso nel mondo. Essendo ancora in evoluzione, si prefigge di coprire tutti i caratteri rappresentabili, garantendo la compatibilità e la non sovrapposizione con le codifiche dei caratteri già definiti, ma lasciando comunque dei ben precisi campi di codici “non usati”, da riservare per la gestione autonoma all’interno di applicazioni particolari.
L’Unicode viene supportato dai moderni standard della programmazione e del markup come XML, Java, JavaScript, LDAP, CORBA 3.0, e da vari sistemi operativi.
Struttura del codice
Unicode era stato originariamente pensato come una codifica a 16 bit (quattro cifre esadecimali) che dava la possibilità di codificare 65.536 caratteri. Tanto si riteneva essere sufficiente per rappresentare i caratteri impiegati in tutte le lingue scritte del mondo. Ora invece lo standard Unicode, che tendenzialmente è perfettamente allineato con la norma ISO/IEC 10646, prevede una codifica a fino 21 bit e supporta un repertorio di codici numerici che possono rappresentare circa un milione di caratteri. Ciò appare sufficiente a coprire anche i fabbisogni di codifica di scritti del patrimonio storico dell’umanità, nelle diverse lingue e negli svariati sistemi di segni utilizzati.
In realtà, solo una minima parte di questa disponibilità di codici è attualmente (al 2008) assegnata. Per lo sviluppo dei codici sono infatti previsti 17 “piani” (“planes”, in inglese), da 00 a 10hex, ciascuno con 65.536 posizioni (quattro cifre esadecimali), ma solo i primi tre e gli ultimi tre piani sono ad oggi assegnati[4], e di questi il primo, detto anche BMP[5], è praticamente sufficiente a coprire tutte le lingue più usate.
Concretamente, questo repertorio di codici numerici è serializzato mediante diversi schemi di ricodifica, che consentono l’uso di codici più compatti per i caratteri usati più di frequente. È previsto l’uso di codifiche con unità da 8 bit (byte), 16 bit (word) e 32 bit (double word), descritte rispettivamente come UTF-8, UTF-16 e UTF-32.





































































