Com a difusão da Informática, a representação da escrita no computador tornou-se um problema complexo, pois é preciso dar suporte a inúmeros sistemas de escrita, cada um com suas peculiaridades. Várias soluções surgiram ao longo do desenvolvimento da computação e aqui vamos falar das mais relevantes.
Basicamente, computadores armazenam números e para armazenar texto na sua memória, é preciso converter os grafemas em números. Por exemplo: a memória do computador, não armazena a letra A, mas o número 65. No início do desenvolvimento dos computadores, as soluções para tratar texto privilegiavam o idioma inglês. A primeira tabela ASCII (American standard code for information interchange) fazia uma correspondência entre números e os grafemas básicos da ortografia inglesa.
Essa tabela alcançava até o número 127, o que corresponde a um código de 7 bits, pois computadores operam com o sistema binário de contagem, e convertido em notação binária, 127 equivale a um número de 7 dígitos.
A primeira tabela ASCII funcionava bem para tratar textos em inglês, mas deixava a desejar na representação de textos em português, por exemplo, pois não considerava os grafemas com diacríticos da nossa ortografia como: á, é, ô, ç, ü, etc.
Com o tempo, a tabela ASCII foi expandida até o número 255. Em notação binária, isso corresponde a um número com 8 dígitos e, por isso, ela é considerada um código de 8 bits. Uma tabela ASCII estendida tem todos os caracteres considerados pela tabela anterior de 7 bits, mais uma expansão que resolveu vários problemas de representação como, por exemplo, os grafemas com diacríticos da língua portuguesa.
Embora a tabela ASCII de 8 bits seja mais ampla que sua antecessora e atenda às necessidades de representação em computador de um idioma como o português, ainda assim, alguns problemas persistem. A tabela ASCII estendida não permite acomodar ao mesmo tempo os grafemas do sistema latino e de outros sistemas como o cirílico, grego, hebraico, etc. Em função disso, foram criadas várias tabelas ASCII de 8 bits, cada uma delas adaptada às necessidades de uma ortografia específica.
Veja uma das tabelas ASCII estendidas, conhecida como ISO 8859-1 ou Latim I. orientada especificamente para alguns idiomas europeus ocidentais.
Notação binária | Notação decimal | Caractere | Descrição |
00000000 | 0 | NUL Nulo | |
00000001 | 1 | SOH Início de título | |
00000010 | 2 | STX Início do texto | |
00000011 | 3 | ETX Final do texto | |
00000100 | 4 | EOT Fim da transmissão | |
00000101 | 5 | ENQ Pesquisa | |
00000110 | 6 | ACK Confirmação | |
00000111 | 7 | BEL Aviso sonoro | |
00000100 | 8 | BS Backspace | |
00001001 | 9 | HT Tabulação horizontal | |
00001010 | 10 | LF Alimentação de linha/nova linha | |
00001011 | 11 | VT Tabulação vertical | |
00001100 | 12 | FF Alimentação de formulário | |
00001101 | 13 | CR Retorno de carro | |
00001110 | 14 | SO Mover para fora | |
00001111 | 15 | SI Mover para dentro | |
00010000 | 16 | DLE Escape de vínculo de dados | |
00010001 | 17 | DC1 Controle de dispositivo 1 | |
00010010 | 18 | DC2 Controle de dispositivo 2 | |
00010011 | 19 | DC3 Controle de dispositivo 3 | |
00010100 | 20 | DC4 Controle de dispositivo 4 | |
00010101 | 21 | NAK Confirmação negativa | |
00010110 | 22 | SYN Estado ocioso síncrono | |
00010111 | 23 | ETB Fim da transmissão | |
00011000 | 24 | CAN Cancelar | |
00011001 | 25 | EM Fim da mídia | |
00011010 | 26 | SUB Substituir | |
00011011 | 27 | ESC Sair | |
00011100 | 28 | FS Separador de arquivos | |
00011101 | 29 | GS Separador de grupos | |
00011110 | 30 | RS Separador de registros | |
00011111 | 31 | US Separador de unidades | |
00100000 | 32 | Espaço | |
00100001 | 33 | ! | Ponto de exclamação |
00100010 | 34 | “ | Aspas |
00100011 | 35 | # | Símbolo de cardinal |
00100100 | 36 | $ | Símbolo da moeda |
00100101 | 37 | % | Sinal de percentagem |
00100110 | 38 | & | E comercial |
00100111 | 39 | ‘ | Apóstrofo |
00101000 | 40 | ( | Abre parêntesis |
00101001 | 41 | ) | Fecha parêntesis |
00101010 | 42 | * | Asterisco |
00101011 | 43 | + | Sinal mais |
00101100 | 44 | , | Virgula |
00101101 | 45 | – | Hífen |
00101110 | 46 | . | Ponto final |
00101111 | 47 | / | Barra |
00110000 | 48 | 0 | Dígito 0 |
00110001 | 49 | 1 | Dígito 1 |
00110010 | 50 | 2 | Dígito 2 |
00110011 | 51 | 3 | Dígito 3 |
00110100 | 52 | 4 | Dígito 4 |
00110101 | 53 | 5 | Dígito 5 |
00110110 | 54 | 6 | Dígito 6 |
00110111 | 55 | 7 | Dígito 7 |
00111000 | 56 | 8 | Dígito 8 |
00111001 | 57 | 9 | Dígito 9 |
00111010 | 58 | : | Dois pontos |
00111011 | 59 | ; | Ponto e virgula |
00111100 | 60 | < | Menor do que |
00111101 | 61 | = | Igual a |
00111110 | 62 | > | Maior do que |
00111111 | 63 | ? | Ponto de interrogação |
01000000 | 64 | @ | Arroba |
01000001 | 65 | A | A maiúsculo |
01000010 | 66 | B | B maiúsculo |
01000011 | 67 | C | C maiúsculo |
01000100 | 68 | D | D maiúsculo |
01000101 | 69 | E | E maiúsculo |
01000110 | 70 | F | F maiúsculo |
01000111 | 71 | G | G maiúsculo |
01001000 | 72 | H | H maiúsculo |
01001001 | 73 | I | I maiúsculo |
01001010 | 74 | J | J maiúsculo |
01001011 | 75 | K | K maiúsculo |
01001100 | 76 | L | L maiúsculo |
01001101 | 77 | M | M maiúsculo |
01001110 | 78 | N | N maiúsculo |
01001111 | 79 | O | O maiúsculo |
01010000 | 80 | P | P maiúsculo |
01010001 | 81 | Q | Q maiúsculo |
01010010 | 82 | R | R maiúsculo |
01010011 | 83 | S | S maiúsculo |
01010100 | 84 | T | T maiúsculo |
01010101 | 85 | U | U maiúsculo |
01010110 | 86 | V | V maiúsculo |
01010111 | 87 | W | W maiúsculo |
01011000 | 88 | X | X maiúsculo |
01011001 | 89 | Y | Y maiúsculo |
01011010 | 90 | Z | Z maiúsculo |
01011011 | 91 | [ | Abre colchetes |
01011100 | 92 | \ | Barra invertida |
01011101 | 93 | ] | Fecha colchetes |
01011110 | 94 | ^ | Acento circunflexo |
01011111 | 95 | _ | Underscore |
01100000 | 96 | ` | Acento grave |
01100001 | 97 | a | a minúsculo |
01100010 | 98 | b | b minúsculo |
01100011 | 99 | c | c minúsculo |
01100100 | 100 | d | d minúsculo |
01100101 | 101 | e | e minúsculo |
01100110 | 102 | f | f minúsculo |
01100111 | 103 | g | g minúsculo |
01101000 | 104 | h | h minúsculo |
01101001 | 105 | i | i minúsculo |
01101010 | 106 | j | j minúsculo |
01101011 | 107 | k | k minúsculo |
01101100 | 108 | l | l minúsculo |
01101101 | 109 | m | m minúsculo |
01101110 | 110 | n | n minúsculo |
01101111 | 111 | o | o minúsculo |
01110000 | 112 | p | p minúsculo |
01110001 | 113 | q | q minúsculo |
01110010 | 114 | r | r minúsculo |
01110011 | 115 | s | s minúsculo |
01110100 | 116 | t | t minúsculo |
01110101 | 117 | u | u minúsculo |
01110110 | 118 | v | v minúsculo |
01110111 | 119 | w | w minúsculo |
01111000 | 120 | x | x minúsculo |
01111001 | 121 | y | y minúsculo |
01111010 | 122 | z | z minúsculo |
01111011 | 123 | { | Abre chaves |
01111100 | 124 | | | Barra vertical |
01111101 | 125 | } | Fecha chaves |
01111110 | 126 | ~ | Til |
01111111 | 127 | DEL Apagar |
10000000 | 128 | Ç |
10000001 | 129 | ü |
10000010 | 130 | é |
10000011 | 131 | â |
10000100 | 132 | ã |
10000101 | 133 | à |
10000110 | 134 | å |
10000111 | 135 | ç |
10000100 | 136 | ê |
10001001 | 137 | ë |
10001010 | 138 | è |
10001011 | 139 | ï |
10001100 | 140 | î |
10001101 | 141 | ì |
10001110 | 142 | Ä |
10001111 | 143 | Å |
10010000 | 144 | É |
10010001 | 145 | æ |
10010010 | 146 | Æ |
10010011 | 147 | ô |
10010100 | 148 | ö |
10010101 | 149 | ò |
10010110 | 150 | û |
10010111 | 151 | ù |
10011000 | 152 | ÿ |
10011001 | 153 | Ö |
10011010 | 154 | Ü |
10011011 | 155 | ¢ |
10011100 | 156 | £ |
10011101 | 157 | ¥ |
10011110 | 158 | ₧ |
10011111 | 159 | ƒ |
10100000 | 160 | á |
10100001 | 161 | í |
10100010 | 162 | ó |
10100011 | 163 | ú |
10100100 | 164 | ñ |
10100101 | 165 | Ñ |
10100110 | 166 | ª |
10100111 | 167 | º |
10101000 | 168 | ¿ |
10101001 | 169 | ⌐ |
10101010 | 170 | ¬ |
10101011 | 171 | ½ |
10101100 | 172 | ¼ |
10101101 | 173 | ¡ |
10101110 | 174 | « |
10101111 | 175 | » |
10110000 | 176 | ░ |
10110001 | 177 | ▒ |
10110010 | 178 | ▓ |
10110011 | 179 | │ |
10110100 | 180 | ┤ |
10110101 | 181 | ╡ |
10110110 | 182 | ╢ |
10110111 | 183 | ╖ |
10111000 | 184 | ╕ |
10111001 | 185 | ╣ |
10111010 | 186 | ║ |
10111011 | 187 | ╗ |
10111100 | 188 | ╝ |
10111101 | 189 | ╜ |
10111110 | 190 | ╛ |
10111111 | 191 | ┐ |
11000000 | 192 | └ |
11000001 | 193 | ┴ |
11000010 | 194 | ┬ |
11000011 | 195 | ├ |
11000100 | 196 | ─ |
11000101 | 197 | ┼ |
11000110 | 198 | ╞ |
11000111 | 199 | ╟ |
11001000 | 200 | ╚ |
11001001 | 201 | ╔ |
11001010 | 202 | ╩ |
11001011 | 203 | ╦ |
11001100 | 204 | ╠ |
11001101 | 205 | ═ |
11001110 | 206 | ╬ |
11001111 | 207 | ╧ |
11010000 | 208 | ╨ |
11010001 | 209 | ╤ |
11010010 | 210 | ╥ |
11010011 | 211 | ╙ |
11010100 | 212 | Ô |
11010101 | 213 | ╒ |
11010110 | 214 | ╓ |
11010111 | 215 | ╫ |
11011000 | 216 | ╪ |
11011001 | 217 | ┘ |
11011010 | 218 | ┌ |
11011011 | 219 | █ |
11011100 | 220 | ▄ |
11011101 | 221 | ▌ |
11011110 | 222 | ▐ |
11011111 | 223 | ▀ |
11100000 | 224 | α |
11100001 | 225 | ß |
11100010 | 226 | Γ |
11100011 | 227 | π |
11100100 | 228 | Σ |
11100101 | 229 | σ |
11100110 | 230 | µ |
11100111 | 231 | τ |
11101000 | 232 | Φ |
11101001 | 233 | Θ |
11101010 | 234 | Ω |
11101011 | 235 | δ |
11101100 | 236 | ∞ |
11101101 | 237 | φ |
11101110 | 238 | ε |
11101111 | 239 | ∩ |
11110000 | 240 | ≡ |
11110001 | 241 | ± |
11110010 | 242 | ≥ |
11110011 | 243 | ≤ |
11110100 | 244 | ⌠ |
11110101 | 245 | ⌡ |
11110110 | 246 | ÷ |
11110111 | 247 | ≈ |
11111000 | 248 | ≈ |
11111001 | 249 | ∙ |
11111010 | 250 | · |
11111011 | 251 | √ |
11111100 | 252 | ⁿ |
11111101 | 253 | ² |
11111110 | 254 | ■ |
11111111 | 255 |
A correta visualização dos caracteres desta tabela depende de vários fatores técnicos. Em computadores atualizados, provavelmente, será possível uma visualização adequada sem problemas. A coluna dos grafemas foi criada com fonte Times New Roman.
Observe que nem todos os números da tabela correspondem a grafemas. Os números de 0 a 31, 127 e 255 são reservados para funções especiais de processamento e não representam caracteres imprimíveis.
O padrão Unicode é definido pela Unicode Consortium (www.unicode.org), instituição sem fins lucrativos que se propõe a desenvolver um sistema abrangente e padronizado de representação de escrita em computadores.
No padrão Unicode, cada caractere está associado a um número identificador único. A tabela Unicode abrange os mais variados sistemas de escrita como latino, grego, cirílico, hebraico, árabe, japonês, chinês, etc., além de considerar símbolos matemáticos, musicais, de moeda, etc. Em função da variedade de caracteres que apresenta, a tabela Unicode é subdividida em blocos. Veja o blocos Unicode, do Latim básico:
bloco Unicode Latim Básico, corresponde exatamente à tabela ASCII de 7 bits.
Notação hexadecimal | Notação decimal | Caractere | Descrição |
0000 | 0 | NUL Nulo | |
0001 | 1 | SOH Início de título | |
0002 | 2 | STX Início do texto | |
0003 | 3 | ETX Final do texto | |
0004 | 4 | EOT Fim da transmissão | |
0005 | 5 | ENQ Pesquisa | |
0006 | 6 | ACK Confirmação | |
0007 | 7 | BEL Aviso sonoro | |
0008 | 8 | BS Backspace | |
0009 | 9 | HT Tabulação horizontal | |
000A | 10 | LF Alimentação de linha/nova linha | |
000B | 11 | VT Tabulação vertical | |
000C | 12 | FF Alimentação de formulário | |
000D | 13 | CR Retorno de carro | |
000E | 14 | SO Mover para fora | |
000F | 15 | SI Mover para dentro | |
0010 | 16 | DLE Escape de vínculo de dados | |
0011 | 17 | DC1 Controle de dispositivo 1 | |
0012 | 18 | DC2 Controle de dispositivo 2 | |
0013 | 19 | DC3 Controle de dispositivo 3 | |
0014 | 20 | DC4 Controle de dispositivo 4 | |
0015 | 21 | NAK Confirmação negativa | |
0016 | 22 | SYN Estado ocioso síncrono | |
0017 | 23 | ETB Fim da transmissão | |
0018 | 24 | CAN Cancelar | |
0019 | 25 | EM Fim da mídia | |
001A | 26 | SUB Substituir | |
001B | 27 | ESC Sair | |
001C | 28 | FS Separador de arquivos | |
001D | 29 | GS Separador de grupos | |
001E | 30 | RS Separador de registros | |
001F | 31 | US Separador de unidades | |
0020 | 32 | Espaço | |
0021 | 33 | ! | Ponto de exclamação |
0022 | 34 | “ | Aspas |
0023 | 35 | # | Símbolo de cardinal |
0024 | 36 | $ | Símbolo da moeda |
0025 | 37 | % | Sinal de percentagem |
0026 | 38 | & | E comercial |
0027 | 39 | ‘ | Apóstrofo |
0028 | 40 | ( | Abre parêntesis |
0029 | 41 | ) | Fecha parêntesis |
002A | 42 | * | Asterisco |
002B | 43 | + | Sinal mais |
002C | 44 | , | Virgula |
002D | 45 | – | Hífen |
002E | 46 | . | Ponto final |
002F | 47 | / | Barra |
0030 | 48 | 0 | Dígito 0 |
0031 | 49 | 1 | Dígito 1 |
0032 | 50 | 2 | Dígito 2 |
0033 | 51 | 3 | Dígito 3 |
0034 | 52 | 4 | Dígito 4 |
0035 | 53 | 5 | Dígito 5 |
0036 | 54 | 6 | Dígito 6 |
0037 | 55 | 7 | Dígito 7 |
0038 | 56 | 8 | Dígito 8 |
0039 | 57 | 9 | Dígito 9 |
003A | 58 | : | Dois pontos |
003B | 59 | ; | Ponto e virgula |
003C | 60 | < | Menor do que |
003D | 61 | = | Igual a |
003E | 62 | > | Maior do que |
003F | 63 | ? | Ponto de interrogação |
0040 | 64 | @ | Arroba |
0041 | 65 | A | A maiúsculo |
0042 | 66 | B | B maiúsculo |
0043 | 67 | C | C maiúsculo |
0044 | 68 | D | D maiúsculo |
0045 | 69 | E | E maiúsculo |
0046 | 70 | F | F maiúsculo |
0047 | 71 | G | G maiúsculo |
0048 | 72 | H | H maiúsculo |
0049 | 73 | I | I maiúsculo |
004A | 74 | J | J maiúsculo |
004B | 75 | K | K maiúsculo |
004C | 76 | L | L maiúsculo |
004D | 77 | M | M maiúsculo |
004E | 78 | N | N maiúsculo |
004F | 79 | O | O maiúsculo |
0050 | 80 | P | P maiúsculo |
0051 | 81 | Q | Q maiúsculo |
0052 | 82 | R | R maiúsculo |
0053 | 83 | S | S maiúsculo |
0054 | 84 | T | T maiúsculo |
0055 | 85 | U | U maiúsculo |
0056 | 86 | V | V maiúsculo |
0057 | 87 | W | W maiúsculo |
0058 | 88 | X | X maiúsculo |
0059 | 89 | Y | Y maiúsculo |
005A | 90 | Z | Z maiúsculo |
005B | 91 | [ | Abre colchetes |
005C | 92 | \ | Barra invertida |
005D | 93 | ] | Fecha colchetes |
005E | 94 | ^ | Acento circunflexo |
005F | 95 | _ | Underscore |
0060 | 96 | ` | Acento grave |
0061 | 97 | a | a minúsculo |
0062 | 98 | b | b minúsculo |
0063 | 99 | c | c minúsculo |
0064 | 100 | d | d minúsculo |
0065 | 101 | e | e minúsculo |
0066 | 102 | f | f minúsculo |
0067 | 103 | g | g minúsculo |
0068 | 104 | h | h minúsculo |
0069 | 105 | i | i minúsculo |
006A | 106 | j | j minúsculo |
006B | 107 | k | k minúsculo |
006C | 108 | l | l minúsculo |
006D | 109 | m | m minúsculo |
006E | 110 | n | n minúsculo |
006F | 111 | o | o minúsculo |
0070 | 112 | p | p minúsculo |
0071 | 113 | q | q minúsculo |
0072 | 114 | r | r minúsculo |
0073 | 115 | s | s minúsculo |
0074 | 116 | t | t minúsculo |
0075 | 117 | u | u minúsculo |
0076 | 118 | v | v minúsculo |
0077 | 119 | w | w minúsculo |
0078 | 120 | x | x minúsculo |
0079 | 121 | y | y minúsculo |
007A | 122 | z | z minúsculo |
007B | 123 | { | Abre chaves |
007C | 124 | | | Barra vertical |
007D | 125 | } | Fecha chaves |
007E | 126 | ~ | Til |
007F | 127 | DEL Apagar |
O primeiro bloco da tabela Unicode (Latim básico) equivale exatamente à tabela ASCII de 7 bits.
Os blocos Extensões IPA, Letras Modificadoras de Espaçamento e Sinais Diacríticos Combinados são de especial interesse dos lingüistas porque trazem a simbologia do Alfabeto Fonético Internacional.
O padrão Unicode considera um número elevado de caracteres. Seus identificadores são números binários de 16 dígitos e, por isso, o Unicode é considerado um código de 16 bits. A versatilidade do Unicode tem um custo, que é justamente o consumo maior de memória. Enquanto na primeira tabela ASCII, cada caractere estava associado a um número de 7 bits, no padrão Unicode cada caractere armazenado consome 16 bits de memória.
O Unicode tem sido adotado maciçamente pela indústria de software, o que o torna o padrão para representação de escrita em computadores.
O padrão Sampa (Speech Assessment Methods Phonetic Alphabet) é uma alternativa para representar em computador transcrições como a da IPA, quando se dispõe apenas dos caracteres da tabela ASCII de 7 bits. No padrão Sampa, fonemas do AFI, por exemplo, são representados por uma combinação de grafemas da tabela ASCII básica. Por exemplo:
Vogal oral, frontal, semifechada, não arredondada | E | |
Vogal oral, frontal, semi-fechada, arredondada | 9 | |
Diacrítico indicador de duração longa | : | |
Consoante velar lateral aproximante | L\ | |
Vogal oral, central, semi-fechada, não arredondada | @\ |
Essa solução pode ser útil em casos como o envio de transcrições por e-mail quando o serviço só opera com caracteres da tabela ASCII 7 bits.
Existem tabelas Sampa para vários idiomas, inclusive português. Além disso, existe uma tabela Sampa estendida, chamada X-Sampa, orientada para a representação do Alfabeto Fonético Internacional.
A classe dos locativos é fechada e compostas por palavras invariantes, não flexionadas. Comportam-se como…
A classe dos artigos é fechada e formada, a rigor, por um único lexema que…
A classe dos possessivos é limítrofe. Poderia ser considerada como um caso especial da classe…
Os sintagmas são as unidades formais mínimas da sintaxe, ou seja, são as unidades que…
A língua portuguesa não é para fracos. São tantos detalhes e exceções que resolvi fazer…
O Acordo Ortográfico da Língua Portuguesa entrou em vigor no Brasil em 1º de janeiro…