Riferimento Tabella ASCII

Ogni carattere stampabile che digiti in inglese corrisponde a un numero compreso tra 32 e 126 nello standard ASCII a sette bit. Sotto 32 e a 127 si trovano i codici di controllo, LF, CR, ESC, DEL e gli altri, che sono ancora importanti quando stai debugando un protocollo seriale o correggendo le terminazioni di riga. Questa tabella di riferimento ti fornisce ogni punto codice da 0 a 127 insieme alla sua forma decimale, esadecimale, ottale, binaria e di entità HTML.

Come usare la tabella ASCII

  1. 1

    Scansiona la riga per il carattere di cui hai bisogno

    Cerca per lettera, simbolo o nome del punto codice. I codici di controllo sono elencati con il loro mnemonico di tre lettere.

  2. 2

    Leggi in orizzontale per la codifica di cui hai bisogno

    Decimale per codice amichevole, esadecimale per codice sorgente, binario per lavoro di protocollo, entità HTML per markup.

  3. 3

    Copia qualsiasi cella

    Utile quando ti viene fornito un dump esadecimale o una sequenza di byte e hai bisogno di sapere come si legge.

Le tre gamme di ASCII

Gamma Decimale Contenuti
Controllo 0-31, 127 NUL, BEL, BS, HT, LF, VT, FF, CR, ESC, DEL, altri
Stampabile 32-126 Spazio, punteggiatura, cifre, A-Z, a-z
Esteso (non-ASCII) 128+ Dipende dalla codifica; ASCII si ferma rigorosamente a 127

Codici di controllo che contano ancora

  • 0x00 NUL, Terminatore di stringa in C, padding in alcuni formati binari.
  • 0x07 BEL, Suona il campanello del terminale.
  • 0x08 BS, Backspace (ritorno indietro).
  • 0x09 HT, Tabulazione orizzontale.
  • 0x0A LF, Avanzamento di riga, il fine riga di Unix.
  • 0x0D CR, Ritorno a capo; si abbina a LF su Windows per CRLF.
  • 0x1B ESC, Inizia le sequenze di escape ANSI per i colori del terminale.
  • 0x7F DEL, Originariamente il codice per perforare un buco nel nastro; ora raramente usato.

ASCII vs Unicode

Unicode conserva i 128 caratteri ASCII nei suoi primi 128 punti di codice e UTF-8 usa gli stessi byte per rappresentarli. ASCII, però, non fa parte di ogni codifica: EBCDIC, per esempio, assegna valori diversi a lettere e cifre.

Conversioni comuni

  • Decimale a esadecimale: 65 (dec) = 0x41 = A
  • Esadecimale a binario: 0x41 = 0100 0001
  • Esadecimale a entità HTML: A o A entrambi si rendono come A

Domande frequenti

ASCII è un codice a 7 bit, lasciando l’ottavo bit di un byte libero per parità o estensione. I valori 128-255 appartengono ai varianti di “ASCII esteso” (Latin-1, Windows-1252, MacRoman, ecc.), tutti incompatibili tra loro, il che è parte del motivo per cui Unicode ha prevalso.

LF (0x0A) scende di una riga; CR (0x0D) riporta il cursore alla colonna zero. Su Unix un newline è solo LF; su Mac classico era solo CR; su Windows e intestazioni HTTP è CR seguito da LF (CRLF). Le discrepanze sono la causa classica di testo a doppia spaziatura o unito tra sistemi.

I progettisti di ASCII hanno disposto maiuscole e minuscole in modo che il bit 0x20 distingua le due forme. Applicare XOR con 0x20 è sicuro solo dopo aver verificato che il byte rappresenti una lettera ASCII; usarlo indiscriminatamente su qualsiasi byte modifica anche cifre, punteggiatura e valori di controllo.

Sì: LF e CR nei file di testo, HT e FF nel codice sorgente e nei terminali, ESC nelle sequenze di colore ANSI, BEL nei campanelli e avvisi del terminale. NUL termina ancora le stringhe C. Gli altri sono per lo più eredità dei tempi del teletype.

Strumenti correlati