informatica01

Created on: 2005-12-14 by admin

Andiamo oggi a presentare una serie di post riguardo il trattamento dei testi nelle lingue orientali.

Incominciamo da tre definizioni fondamentali:

  1. Repertorio: un insieme di caratteri. Il concetto è simile a quello dell'alfabeto. Non viene fatta nessuna assunzione sull'utilizzo di questo insieme di caratteri in un computer. I caratteri solitamente hanno un nome tipo "A maiuscola", "IPSILON".
  2. Code: è una associazione uno a uno tra caratteri appartenenti ad un determinato insieme e un insieme di valori numerici.

  3. Encoding: un metodo (algoritmo) per rappresentare caratteri in un formato digitale, associando i character code a sequenze di byte.

Un esempio di repertorio (character repertoire) è l'alfabeto della lingua italiana, oppure quello cirillico, o l'alfabeto greco.

Il concetto di repertorio non implica nessuna connotazione informatica: si può fare sulla carta.

Se prendo i numero da uno a 26 e li associo alle lettere dell'alfabeto, ho fatto un code.

Anche in questo caso, non c'è una relazione diretta con il mondo dei computer.

Nota bene: Unicode è un character code, infatti è solamente un (lunghissimo) elenco di caratteri.

Il concetto di encoding inizia ad avere senso quando bisogna pensare a come rappresentare nella memoria di un computer i numeri associati ai caratteri.

Infatti Unicode prevede svariate decine di migliaia di caratteri, e chiunque potrebbe svegliarsi alla mattina e decidere di allineare i bit dei propri programmi a suo piacimento (è già successo).

Siccome questo porterebbe alla più completa incompatibilità, si è pensato di stabilire un sistema uguale per tutti.

Questo chiaramente ha portato a diverse guerre e carneficine tra i sostenitori delle varie versioni.

No, scherzo; comunque la maniera più efficiente è senza dubbio UTF-8, che quindi è un modo per rappresentare i caratteri Unicode esattamente come EUC, UTF-16 eccetera.

Comments:


No Copyright


No Copyright