
ASCII, UTF-8, ISO-8859 … Potresti aver visto questi strani moniker fluttuare in giro, ma cosa significano in realtà? Continua a leggere come si spiega che cosa codifica dei caratteri e come queste sigle si riferiscono al testo in chiaro che vediamo sullo schermo.
Mattoni fondamentali
Quando parliamo di lingua scritta, parliamo di lettere come elementi costitutivi di parole, che poi costruiscono frasi, paragrafi e così via. Letters are symbols which represent sounds. Quando si parla di linguaggio, si sta parlando di gruppi di suoni che si uniscono per formare una sorta di significato. Each language system has a complex set of rules and definitions that govern those meanings. Se hai una parola, è inutile a meno che tu non conosca la lingua di provenienza e la usi con altre persone che parlano quella lingua.

(Comparison of Grantha, Tulu, and Malayalam scripts, Image from Wikipedia)
Nel mondo dei computer, usiamo il termine “carattere”. Un personaggio è una sorta di concetto astratto, definito da parametri specifici, ma è l'unità fondamentale del significato. Latino ‘A’ non è lo stesso di un greco ‘alpha’ o un arabo ‘alif’ perché hanno diversi contesti – Sono di diverse lingue e hanno leggermente diverse pronunce – in modo che possiamo dire che sono caratteri diversi. The visual representation of a character is called a “glyph” and different sets of glyphs are called fonts. Groups of characters belong to a “set” or a “repertoire.”
Quando scrivi un paragrafo e cambi il carattere, non stai cambiando i valori fonetici delle lettere, stai cambiando il loro aspetto. E 'solo estetico (ma non poco importante!). Alcune lingue, come l'Antico Egitto e cinese, sono ideogrammi; questi rappresentano idee intere anziché suoni e le loro pronunce possono variare nel tempo e nella distanza. Se si sostituisce un carattere per un altro, si sta sostituendo un'idea. It’s more than just changing letters, it’s changing an ideogram.
Codifica dei caratteri

(Immagine da Wikipedia)
Quando si digita qualcosa sulla tastiera o si carica un file, come fa il computer a sapere cosa visualizzare? Che la codifica di quale personaggio è per. Text on your computer isn’t actually letters, it’s a series of paired alphanumeric values. La codifica dei caratteri funge da chiave per cui i valori corrispondono a quali caratteri, proprio come il modo in cui l'ortografia determina quali suoni corrispondono a quali lettere. Morse code is a sort of character encoding. Spiega come gruppi di unità lunghe e corte, come segnali acustici rappresentano caratteri. Nel codice Morse, i personaggi sono solo lettere dell'alfabeto inglese, numeri e punti fermi. Esistono molte codifiche dei caratteri del computer che si traducono in lettere, numeri, segni di accento, segni di punteggiatura, simboli internazionali e così via.
Often on this topic, the term “code pages” is also used. They are essentially character encodings as used by specific companies, often with slight modifications. Ad esempio, la tabella codici di Windows 1252 (precedentemente nota come ANSI 1252) è una forma modificata di ISO-8859-1. They’re mostly used as an internal system to refer to standard and modified character encodings that are specific to the same systems. All'inizio, la codifica dei caratteri non era così importante perché i computer non comunicavano tra loro. Con Internet che sale alla ribalta e che la rete è un evento comune, è diventato un aspetto sempre più importante della nostra vita quotidiana senza che nemmeno ce ne accorgessimo.
Many Different Types

(Immagine da sarah sosiak)
There are plenty of different character encodings out there, and there are plenty of reasons for that. Quale personaggio codifica si sceglie di utilizzare dipende da che cosa i vostri bisogni sono. Se comunichi in russo, ha senso usare una codifica dei caratteri che supporti bene il cirillico. Se comunichi in coreano, allora vorrai qualcosa che rappresenti bene Hangul e Hanja. Se sei un matematico, allora vuoi qualcosa che abbia tutti i simboli scientifici e matematici ben rappresentati, così come i glifi greci e latini. Se sei un burlone, forse trarrai beneficio da un testo capovolto. E, se desideri che tutti questi tipi di documenti vengano visualizzati da una determinata persona, desideri una codifica piuttosto comune e facilmente accessibile.
Let’s take a look at some of the more common ones.

(Excerpt of ASCII table, Image from asciitable.com)
- ASCII – The American Standard Code for Information Interchange is one of the older character encodings. È stato originariamente ideato sulla base di codici telegrafici e si è evoluto nel tempo per includere più simboli e alcuni caratteri di controllo non stampati ormai obsoleti. È probabilmente il più semplice possibile in termini di sistemi moderni, poiché è limitato all'alfabeto latino senza caratteri accentati. La sua codifica a 7 bit consente solo 128 caratteri, motivo per cui ci sono diverse varianti non ufficiali in uso in tutto il mondo.
- ISO-8859 – L'Organizzazione Internazionale per più utilizzato gruppo di codifiche dei caratteri di normalizzazione viene numero 8859. Ogni codifica specifica è indicata da un numero, spesso preceduto da un moniker descrittivo, ad esempio ISO-8859-3 (Latin-3), ISO-8859-6 (Latina / arabo). È un superset di ASCII, il che significa che i primi 128 valori nella codifica sono gli stessi di ASCII. It’s 8-bit, however, and allows for 256 characters, so it builds off from there and includes a much wider array of characters, with each specific encoding focusing on a different set of criteria. Il Latin-1 includeva un mucchio di lettere e simboli accentati, ma in seguito fu sostituito con un set rivisto chiamato Latin-9 che include glifi aggiornati come il simbolo dell'Euro.

(Excerpt of Tibetan script, Unicode v4, from unicode.org)
- Unicode – Questa codifica obiettivi standard a universalità. It currently includes 93 scripts organized in several blocks, with many more in the works. Unicode funziona in modo diverso rispetto agli altri insiemi di caratteri dal fatto che invece di codificare direttamente per un'icona, ogni valore è diretto in seguito un “punto codice”. Questi sono i valori esadecimali che corrispondono ai personaggi ma i glifi stessi sono previsti in modo distaccato dal programma , such as your web browser. Questi punti di codice sono comunemente descritti come segue: U + 0040 (che si traduce in ‘@’). codifiche specifiche sotto lo standard Unicode sono UTF-8 e UTF-16. UTF-8 attempts to allow for maximum compatibility with ASCII. È 8 bit, ma permette di tutti i caratteri tramite un meccanismo di sostituzione e più coppie di valori per carattere. UTF-16 ditches perfect ASCII compatibility for a more complete 16-bit compatibility with the standard.
- ISO-10646 – Questo non è un codifica reale, solo un set di caratteri di Unicode che è stato standardizzato dall'ISO. E 'soprattutto importante perché è il repertorio di caratteri utilizzato da HTML. Mancano alcune delle funzioni più avanzate fornite da Unicode che consentono il confronto e lo scripting da destra a sinistra e da sinistra a destra. Tuttavia, funziona molto bene per l'uso su Internet in quanto consente l'utilizzo di un'ampia varietà di script e consente al browser di interpretare i glifi. Questo rende la localizzazione po 'più facile.
Quello che codifica dovrei usare?
Well, ASCII works for most English speakers, but not for much else. Più spesso vedrai ISO-8859-1, che funziona per la maggior parte delle lingue dell'Europa occidentale. The other versions of ISO-8859 work for Cyrillic, Arabic, Greek, or other specific scripts. Tuttavia, se si desidera visualizzare più script nello stesso documento o nella stessa pagina Web, UTF-8 consente una compatibilità molto migliore. Funziona anche molto bene per le persone che usano punteggiatura, simboli matematici o caratteri preconfezionati come quadrati e caselle di controllo.

(Multiple languages in one document, Screenshot of gujaratsamachar.com)
There are drawbacks to each set, however. ASCII è limitato nei segni di punteggiatura, quindi non funziona incredibilmente bene per le modifiche tipograficamente corrette. Hai mai digitato copia / incolla da Word solo per avere una strana combinazione di glifi? Questo è lo svantaggio di ISO-8859, o più correttamente, la sua presunta interoperabilità con pagine di codice OS-specifici (stiamo guardando a voi, Microsoft!). Il principale svantaggio di UTF-8 è la mancanza di supporto adeguato nelle applicazioni di modifica e pubblicazione. Un altro problema è che i browser spesso non interpretano e visualizzano semplicemente il segno dell'ordine dei byte di un carattere codificato UTF-8. Questo si traduce in glifi indesiderati visualizzati. E, naturalmente, dichiarando la codifica uno e utilizzando i caratteri di un altro senza dichiarare / li fa riferimento correttamente su una pagina web rende difficile per i browser per rendere in modo corretto e per i motori di ricerca di indicizzare in modo appropriato.
Per i propri documenti, manoscritti, e così via, è possibile utilizzare tutto ciò che serve per ottenere il lavoro fatto. As far as the web goes, though, it seems that most people agree on using a UTF-8 version that does not use a byte order mark, but that’s not entirely unanimous. Come si può vedere, ogni codifica personaggio ha il proprio uso, il contesto e punti di forza e di debolezza. Come utente finale, probabilmente non dovrai occupartene, ma ora puoi fare un ulteriore passo avanti se lo desideri.
