O documento descreve a evolução das codificações de caracteres para computadores, começando pelo código ASCII de 7 bits para o alfabeto inglês e evoluindo para os padrões Unicode e ISO 10646 que suportam todos os sistemas de escrita. Discute as limitações do ISO 8859 e introduz os formatos UTF para mapear caracteres Unicode, como UTF-8 de comprimento variável e UTF-16/32 de comprimento fixo.
3. ISO 8859 e ISO 8859 - 1 Fig. 2 – Caracteres do alfabeto latino 4 TPM - Unicode
4. Quando se deu o fim do suporte à codificação anteriormente referida, o grupo passou a concentrar-se no UCS (Universal CharacterSet) e no Unicode. Por conseguinte, apareceu a norma internacional ISO/IEC 10646 que define o Conjunto Universal de Caracteres (do inglês Universal CharacterSet) e contém, aproximadamente, 100000 códigos, representando símbolos, letras, números e ideogramas. A Unicode Consortium tem vindo a trabalhar com a ISO, desde 1991, para desenvolver o padrão Unicode e a ISO/IEC 10646 em conjunto, assim, o número e a nomenclatura dos caracteres são idênticos na versão 2.0 do Unicode e na ISO/IEC 10646-1:1993. 5 TPM - Unicode ISO/IEC 10646
5. O Unicode é um padrão de caracteres normalizado que possibilita aos computadores representar e manipular texto dos diversos sistemas de escrita existentes. Este tinha como principal fim ultrapassar as limitações de codificações de caracteres tradicionais, como as definidas pela ISO 8859, nomeadamente, o facto de permitirem o processamento bilingue mas não o multilingue. Existem dois métodos possíveis para mapear os códigos Unicode em códigos de implementação, o UCS (Universal CharacterSet) e o UTF (Unicode TransformationFormat). O número associado ao mapeamento UCS indica o número de bytes por código, por outro lado, o número associado ao UTF indica o número de bits por código. 6 TPM - Unicode Unicode
6. É um tipo de codificação Unicode de comprimento variável e pode representar qualquer caracter universal padrão do Unicode, sendo também compatível com o código ASCII. Por ser uma codificação de comprimento variável representa uma forma de optimizar o espaço alocado para textos Unicode. 7 TPM - Unicode UTF - 8
7. Tanto o UTF – 16 como o UCS – 2 correspondem a codificações de 16 bits. O primeiro possui uma largura variável e pode incluir uma ou duas palavras 16 bits para representar os caracteres, no entanto, o segundo possui uma largura fixa que apenas suporta o plano básico de línguas, tornando-o assim desusado. 8 TPM - Unicode UTF – 16 e UCS - 2
8. No campo das codificações de 32 bits existe o UCS – 4 e o UTF – 32. Ambos usam uma largura fixa para cada caracterUnicode. Inicialmente, na norma ISO 10646, definiu-se uma forma de representação denominada UCS – 4, em que cada caractercodificado no UCS era representado por um valor de código de 32 bits num espaço de código de inteiros entre 0 e 7FFFFFFF hexadecimal. Como algumas pessoas acharam que era um desperdício reservar um espaço tão grande de código para o mapeamento, surgiu o UTF – 32, um subconjunto do UCS -4 que usa valores de 32 bits num espaço de código de 0 a 10FFFF hexadecimal, apenas. 9 TPM - Unicode UCS - 4