O que é o código ASCII – explicado de forma simples
O que é o código ASCII?
O código ASCII(American Standard Code for Information Interchange) é um sistema normalizado de codificação de caracteres que foi desenvolvido nos anos 60 para normalizar a comunicação entre computadores e outros dispositivos electrónicos. Ao atribuir um valor numérico único a cada carácter, símbolo e comando de controlo, o código ASCII permite o processamento e a representação eficientes de dados de texto em sistemas digitais. A pergunta “O que é o código ASCII?” pode, portanto, ser respondida como a base da comunicação digital de texto.
A história do código ASCII
O desenvolvimento do código ASCII começou em 1963 pelo American National Standards Institute (ANSI), que reconheceu a necessidade de criar uma codificação universal para os caracteres. O código foi originalmente concebido para a telegrafia e mais tarde adaptado aos requisitos da tecnologia informática. A codificação de caracteres define 128 caracteres, constituídos por 33 caracteres não imprimíveis e 95 caracteres imprimíveis, incluindo:
Números (0-9)
Letras maiúsculas e minúsculas (A-Z, a-z)
Caracteres especiais (por exemplo, @, #, $, %)
Caracteres de controlo (por exemplo, quebra de linha ou tabulador)
Este código de 7 bits tornou possível a visualização e transferência de dados de texto em diferentes plataformas. O código ASCII foi posteriormente adaptado por extensões como o código ASCII alargado (8 bits) para abranger mais caracteres, como os tremas e os caracteres especiais.
Para além dos códigos hexadecimais, a tabela seguinte apresenta também os números decimais.
|
|
|
|
A extensão para 256 caracteres ocorreu com a introdução de conjuntos de caracteres de 8 bits e computadores de 8 bits na década de 1980. No entanto, esta extensão não foi implementada como parte da norma ASCII oficial. Em vez disso, foram criados os chamados códigos ASCII alargados que utilizavam o oitavo bit (para além do ASCII de 7 bits). As mais proeminentes destas extensões de 8 bits são
- ISO 8859-1 (Latin-1):
Esta variante foi introduzida em 1987 e normalizou os 128 caracteres adicionais para as línguas da Europa Ocidental (por exemplo, tremas como ä, ö, ü, ß).
- Windows-1252:
A Microsoft desenvolveu este conjunto de caracteres como uma extensão da norma ISO 8859-1. Foi utilizado nos sistemas operativos Windows e acrescentou caracteres adicionais, como as vírgulas invertidas alternadas (” “) e certos símbolos (€). A extensão era necessária para suportar línguas e caracteres especiais fora do conjunto ASCII original, especialmente para cumprir requisitos nacionais e técnicos.
Mais informações também em Wikipedia.org
O significado do código ASCII
O código ASCII desempenha um papel central na história da informática. Sem ele, a comunicação digital moderna, tal como a conhecemos, dificilmente seria possível. Apresentamos-te alguns dos seus aspectos mais importantes:
- Normalização:
O código ASCII tornou possível a apresentação coerente de dados de texto em diferentes sistemas informáticos. Este foi um passo decisivo para o desenvolvimento da Internet e das redes globais.
- Comunicação entre plataformas:
Devido à sua ampla aceitação, o código ASCII tornou-se a norma para formatos de ficheiros como TXT e HTML.
- Base para outra codificação:
Muitos sistemas de codificação modernos, como o UTF-8, baseiam-se no código ASCII e alargam a sua funcionalidade.
Aplicação do código ASCII
A utilização do código ASCII vai desde simples ficheiros de texto a aplicações de software complexas. Eis alguns exemplos:
Armazenamento de ficheiros e troca de dados: Formatos como .txt ou .csv utilizam ASCII para armazenar e transferir dados de texto.
Protocolos de comunicação: As aplicações e protocolos de rede, como o HTTP ou o SMTP, utilizam o ASCII para definir comandos de controlo e informações de cabeçalho.
Arte ASCII: Um exemplo criativo é a criação de imagens e desenhos constituídos exclusivamente por caracteres ASCII.
Geradores de código ASCII: Um gerador de código ASCII é uma ferramenta que ajuda os programadores a converter textos ou símbolos no seu código ASCII. Estas ferramentas são particularmente úteis para trabalhar com linguagens de programação ou protocolos de transferência de dados.
Aplicações do código ASCII na programação
Codificação de caracteres: Estas funções são úteis para analisar textos ou manipular codificações.
Arte ASCII: Podes utilizá-lo para gerar programaticamente caracteres como padrões de píxeis para arte ASCII. Isto permite-te criar imagens de píxeis específicas.
Protocolos de transmissão de dados: os códigos ASCII fazem frequentemente parte de formatos e protocolos de mensagens.
Encriptação: Com determinados algoritmos, os caracteres podem ser encriptados atribuindo simplesmente um carácter diferente a cada carácter ASCII. Apenas aqueles que conhecem a chave ou certas técnicas de descodificação podem descodificar os textos.
Programar o código ASCII em caracteres e vice-versa
Para converter o código ASCII em caracteres ou para converter caracteres no seu valor ASCII, podes utilizar funções simples em JavaScript e Python.
Código ASCII em JavaScript:
// Converte o valor ASCII em carácter
deixa que asciiValue = 65;
let character = String.fromCharCode(asciiValue);
console.log(character); // Saída: A
// Converte o carácter em valor ASCII
deixa char = ‘A’;
deixa que ascii = char.charCodeAt(0);
console.log(ascii); // Saída: 65
Código ASCII em Python:
# Converte o valor ASCII em carácter
valor_ascii = 65
carácter = chr(valor_ascii)
print(carácter) # Saída: A
# Converte o carácter em valor ASCII
char = “A
valor_ascii = ord(char)
print(ascii_value) # Saída: 65
Caracteres de código ASCII como gráficos de píxeis
Para apresentar caracteres ASCII num ecrã, estes devem ser armazenados como códigos de píxeis numa biblioteca. Nos modernos programas de processamento de texto estão disponíveis numerosos tipos de letra, a maioria dos quais se baseia em formatos vectoriais e pode ser dimensionada de forma flexível. No entanto, nos primórdios da tecnologia informática moderna e, em particular, com as impressoras matriciais, a representação dos caracteres dependia fortemente de gráficos de píxeis fixos. Estes caracteres eram impressos em formatos predefinidos, como 5 x 7,
8 x 12 ou tamanhos de grelha semelhantes.
Exemplos para o carácter ASCII (64) = @
Estas imagens de píxeis foram criadas com o nosso gerador de píxeis!
@ como 5 x 7 caracteres
@ como 8 x 12 caracteres
@ como carácter de escala
no tipo de letra “ARIAL”
Exemplo para o carácter ASCII (65) = A
Estas imagens de píxeis foram criadas com o nosso gerador de píxeis!
A como 5 x 7 caracteres
A como 8 x 12 caracteres
A como um carácter de escala
no ecrã de tipo “ARIAL
A necessidade desta definição de píxeis resultou das limitações técnicas da época. As impressoras matriciais, que geravam pixéis movendo seletivamente agulhas numa fita de cor, só podiam imprimir caracteres disponíveis em grelhas de pixéis claramente definidas. Cada agulha correspondia a um ponto de píxeis e o tamanho e a qualidade do tipo de letra eram definidos pela resolução destas grelhas.
Uma grelha típica de 5 x 7 permitia a visualização dos caracteres básicos do código ASCII, enquanto as grelhas maiores, como 8 x 12 ou 9 x 14, eram utilizadas para representações mais pormenorizadas.
Com os geradores de píxeis interactivos para 5 x 7 e 8 x 12 píxeis, podes experimentar e criar os teus próprios gráficos de píxeis.
Gerador de código de pixéis 5 x 7 pixéis
Clica nos campos para os assinalar.
Obtém os geradores de código de píxeis com a grelha de píxeis
5×7 píxeis ou 8 x 12 píxeis gratuitamente!
Abre simplesmente numa nova janela!
Podes personalizar o código HTML e alterar os títulos ou o texto dos botões nos geradores de píxeis. Basta transferires o ficheiro HTML: Vai ao teu browser: Ficheiro / Guardar como.
Estes códigos fixos de píxeis eram essenciais não só para as impressoras matriciais, mas também para a visualização nos primeiros monitores. Os monitores das primeiras gerações trabalhavam com resoluções baixas e só podiam apresentar caracteres em blocos cujas formas eram também definidas por grelhas de píxeis. A implementação destes padrões fixos foi uma pedra angular para a difusão da norma ASCII, que ainda hoje serve de base a muitas codificações de caracteres.
Um gerador de código ASCII
Armazenámos os gráficos de pixéis para todos os caracteres imprimíveis (32 – 127) como gráficos de 5 x 7 pixéis e programámos um gerador ASCII que te permite selecionar os caracteres.
Os caracteres ASCII como gráficos de píxeis são apenas um exemplo de como estes caracteres podem ser apresentados numa grelha de pontos. Um carácter é sempre atribuído a um número no código ASCII, independentemente da forma como é apresentado.
No programa Code Generator, todos os caracteres são armazenados em representação binária. Se analisares o código HTML deste programa, podes redefinir os caracteres tu mesmo!
Exemplo para ASCII (64):
64: [ // Exemplo para “@” em 5×7
“01110”,
“10001”,
“10011”,
“10101”,
“10011”,
“10000”,
“01111”
],