Che cos'è la codifica dei caratteri?
La codifica dei caratteri, nella programmazione per computer, è un metodo o un algoritmo utilizzato per trovare una rappresentazione solitamente numerica di un carattere, un glifo o un simbolo. L'uso della codifica dei caratteri nei computer è necessario perché le informazioni all'interno della memoria del computer e dei supporti leggibili dal computer sono archiviate come sequenze di bit o numeri. Ciò richiede l'uso della codifica per tradurre caratteri non numerici utilizzati per la visualizzazione o l'output leggibile dall'uomo in una forma che un computer può manipolare. In un'applicazione più specifica, i documenti HTML (HyperText Markup Language) letti dai browser Web possono definire il tipo di codifica dei caratteri che stanno utilizzando per far sapere al browser quale set di caratteri specifico utilizzare quando si visualizzano le informazioni nel documento. Esistono diversi schemi di codifica in uso, sebbene molti di questi set proprietari e legacy vengano lentamente sostituiti dallo standard di codifica Unicode®.
All'inizio dei computer, quando lo spazio di memoria era limitato, i caratteri di base dell'alfabeto inglese - inclusi punteggiatura e numeri - venivano memorizzati in sequenze di 7 bit che consentivano 128 caratteri diversi. In questo schema originale, ogni byte a 7 bit rappresentava un carattere dell'alfabeto inglese, numerato in sequenza. Questa codifica dei caratteri era efficiente e alla fine è stata standardizzata e utilizzata nella maggior parte dei computer prodotti. Sebbene il sistema di codifica si sia evoluto nello standard di codifica Unicode®, il concetto è rimasto lo stesso. Vale a dire, ogni singolo carattere in una lingua è direttamente correlato a un singolo numero all'interno di un set di caratteri standard di grandi dimensioni e quel numero è ciò che un computer utilizza per archiviare, elaborare e indicizzare il carattere.
Altri tipi di codifica dei caratteri sono stati sviluppati per diversi motivi. Alcuni che erano specificamente orientati all'alfabeto inglese e che dovevano essere usati per il testo mappavano i loro caratteri solo su sequenze a 7 bit e poi li distribuivano su byte a 8 bit o ottetti. Ciò ha avuto l'effetto di salvare 1 bit per ottetto, utilizzando efficacemente la codifica dei caratteri come tipo di compressione. Altri schemi di codifica hanno tentato di fornire informazioni di base su un personaggio, e quindi caratteri aggiuntivi per rappresentare accenti speciali che potevano essere usati quando si scriveva in una lingua diversa, sebbene questi fossero in gran parte abbandonati per i metodi di codifica one-to-one più semplici.
Nei documenti HTML, la codifica dei caratteri è all'incirca la stessa del concetto più ampio, tranne per il fatto che la codifica definita comprende un intero set di caratteri. Questo può essere importante non solo per le lingue straniere, ma per i documenti che usano simboli specifici per la scienza o la matematica che non sono presenti in tutti i set di caratteri. Può anche essere utile per utilizzare la punteggiatura e altri glifi che potrebbero non essere presenti o mappati in modo diverso attraverso schemi di codifica. I documenti che non definiscono correttamente una codifica di caratteri non standard potrebbero essere visualizzati in modo errato o essere riempiti con caratteri e segnaposti senza senso anziché con informazioni leggibili.