ASCII (American Standard Code for Information Interchange) é um padrão de codificação de caracteres que representa letras, números, sinais de pontuação e caracteres de controle usando 7 bits, totalizando 128 símbolos possíveis. Publicado originalmente em 1963 pelo ANSI (American National Standards Institute) sob a norma ANSI X3.4-1963, tornou-se a base de praticamente todos os sistemas modernos de texto digital.
TL;DR
- O que é: padrão de codificação de 7 bits que mapeia 128 caracteres (letras, números, pontuação e controles) para valores numéricos de 0 a 127.
- Por que importa: serve como fundamento histórico do Unicode e do UTF-8, garantindo compatibilidade universal entre sistemas, protocolos e linguagens de programação.
- Quando usar: em protocolos legado (HTTP headers, SMTP, IRC), identificação de arquivos (magic bytes), scripts de shell e integrações com sistemas COBOL/mainframe.
Como funciona o ASCII?
ASCII é uma tabela numérica que associa cada caractere a um valor entre 0 e 127, armazenado em 7 bits.
Segundo o IETF RFC 20 (1969), cada caractere ASCII ocupa 7 bits, permitindo 128 combinações únicas. O oitavo bit era originalmente usado para paridade em transmissões seriais. O valor 65 representa a letra maiúscula ‘A’, o 97 a minúscula ‘a’ e o 48 o algarismo ‘0’. Essa correspondência fixa é a razão pela qual arquivos ASCII são portáveis entre qualquer sistema operacional, arquitetura de processador ou linguagem de programação desde 1963.
Estrutura da tabela ASCII
ASCII divide seus 128 caracteres em três grupos funcionais bem definidos. Segundo o ANSI X3.4-1986, a tabela é organizada assim:
- Caracteres de controle (0-31): incluem NUL (0), LF (10, quebra de linha Unix), CR (13, retorno de carro), TAB (9) e ESC (27). Não são visíveis, mas controlam o comportamento de terminais e impressoras.
- Caracteres imprimíveis (32-126): começam com espaço (32), passam por dígitos (48-57), letras maiúsculas (65-90), letras minúsculas (97-122) e símbolos como ‘@’ (64), ‘#’ (35) e ‘$’ (36).
- DEL (127): caractere de exclusão, herança das fitas perfuradas, onde perfurar todos os bits marcava exclusão.
Extended ASCII e as limitações
Segundo o Unicode Consortium (2023), o ASCII original nunca contemplou acentos, cedilha ou caracteres não latinos. Para resolver isso, surgiram variantes de 8 bits (256 caracteres) como ISO 8859-1 (Latin-1) e Windows-1252, que adicionaram á, é, ç, ã e símbolos europeus. Essas extensões causaram décadas de problemas de compatibilidade entre plataformas, dando origem ao famoso mojibake (é, ç, Â) quando textos são interpretados no encoding errado.
ASCII vs Unicode
O Unicode surgiu em 1991 como sucessor do ASCII para resolver o problema da internacionalização. Enquanto ASCII cobre 128 caracteres, o Unicode 15.1 (2023) mapeia mais de 149 mil caracteres de todos os idiomas do mundo. O UTF-8, codificação dominante da web, é 100% compatível com ASCII: os primeiros 128 pontos de código do Unicode têm exatamente a mesma representação binária que o ASCII, garantindo compatibilidade retroativa total.
ASCII na prática moderna
Segundo a W3Techs (2024), 98% dos sites usam UTF-8, mas ASCII ainda é fundamental: cabeçalhos HTTP, comandos SMTP, protocolos IRC, shebangs de scripts (#!/bin/bash), sintaxe de linguagens de programação e formatos como JSON e YAML são estritamente ASCII em sua estrutura. ASCII art (arte com caracteres) permanece popular em documentação técnica, terminais e ferramentas CLI.
ASCII e a Shiftmind
Compreender codificação de caracteres é essencial para evitar problemas de mojibake em sites, e-mails e integrações. A Shiftmind oferece criação de sites WordPress com configuração correta de charset UTF-8 desde o primeiro deploy, suporte e manutenção WordPress para corrigir problemas de encoding em bancos de dados e hospedagem WordPress otimizada com headers HTTP corretos.
Para saber mais sobre história, tabela completa e diferenças entre ASCII, Unicode e UTF-8, leia nosso artigo completo sobre ASCII.
Última atualização: Setembro/2026


