Codificações ASCII, UTF e UNICODE
AMBIENTE OPERACIONAL
CODIFICAÇÕES ASCII, UNICODE E UTF
São Paulo
2015
1. ASCII
ASCII (American Standard Code for Information Interchange; "Código Padrão Americano para o Intercâmbio de Informação") é um código binário (cadeias de bits: 0s e 1s), proposto por Robert W. Bemer visando padronizar os códigos para caracteres alfa-numéricos (letras, sinais, números e acentos), e que codifica um conjunto de 128 sinais: 95 sinais gráficos (letras do alfabeto latino, sinais de pontuação e sinais matemáticos) e 33 sinais de controle. Cada código binário possui 8 bits (equivalente a 1 byte), sendo 7 bits para o propósito de codificação e 1 bit de paridade (detecção de erro).
A codificação ASCII fornece um alcance de 0 a 127 em decimais. Isto inclui 32 caracteres de controle não visíveis, a maior parte entre 0 e 31, com o caractere de controle final, DEL ou delete em 127. Os caracteres de 32 a 126 são caracteres visíveis: um espaço, marcas de pontuação, letras latinas e números. O oitavo bit em ASCII era originalmente usado como um bit de verificação de erros. Se isto não é desejado, é deixado como 0. Isto significa que, com ASCII, cada caractere é representado por um único byte.
Ainda que o ASCII fosse considerado mais que suficiente no que condiz a comunicação em inglês moderno, outras línguas, tais como as europeias, as quais muitos caracteres são acentuados, não se apresentam tão eficazes para esta codificação. Os padrões ISO 8859 foram desenvolvidos para satisfazer essas necessidades. Eles eram compatíveis com ASCII, mas ao invés de deixar o oitavo bit em branco, era usado para permitir mais 127 caracteres em cada codificação. As limitações do ISO 8859 logo vieram à luz, e existem atualmente 15 variantes do padrão ISO 8859 (de 8859-1 até 8859-15). Fora do alcance de bytes do conjunto de caracteres compatível com ASCII, existe frequentemente um conflito entre as letras representadas por cada byte.
A criação dessas