Vai al contenuto

Tabella ASCII

ASCII assegna un numero a 128 caratteri: le cifre, le lettere latine senza accento, la punteggiatura comune e 33 codici di controllo che non erano mai destinati a essere stampati. Ognuno di essi è elencato di seguito in decimale, esadecimale, ottale e binario, con il relativo numero di entità HTML.

I primi 32 codici e l'ultimo sono di controllo. La maggior parte è storica, di un'epoca di telescriventi e nastri perforati, ma alcuni fanno ancora funzionare tutto ciò che digiti: 9 è Tab, 10 è il newline di Unix, 13 è il ritorno a capo che Windows gli abbina e 27 avvia ogni sequenza di escape ANSI che il tuo terminale usa per i colori.

ASCII è costituito dai primi 128 punti di codice di Unicode, invariati, ed è per questo che rimane il denominatore comune di quasi ogni codifica in uso. UTF-8 è stato progettato in modo che qualsiasi file puramente ASCII sia già UTF-8 valido, byte per byte.

Codici di controllo

0–31, 127
DecHexOttBinarioCarattereHTMLNome
00000000000000NUL�NullTerminatore di stringa in C. Non è un carattere stampabile.
10100100000001SOHInizio intestazioneStorico; delimitava l'intestazione di un blocco di trasmissione.
20200200000010STXInizio testoStorico; segnava dove iniziava il corpo del messaggio.
30300300000011ETXFine testoInviato da Ctrl+C, ed è per questo che quel tasto interrompe un programma.
40400400000100EOTFine trasmissioneInviato da Ctrl+D; chiude stdin in una shell Unix.
50500500000101ENQRichiestaStorico; chiedeva all'estremità remota di identificarsi.
60600600000110ACKConfermaRisposta positiva nei vecchi protocolli seriali.
70700700000111BELCampanelloFa suonare il campanello del terminale. Scritto \a in C.
80801000001000BSBackspaceSposta il cursore indietro di una colonna. Scritto \b.
90901100001001HT	Tabulazione orizzontaleIl tasto Tab. Scritto \t.
100A01200001010LF
Avanzamento rigaIl newline di Unix. Scritto \n.
110B01300001011VTTabulazione verticaleRaro; avanza alla successiva tabulazione verticale. Scritto \v.
120C01400001100FFAvanzamento moduloInterruzione di pagina per le stampanti. Scritto \f.
130D01500001101CR
Ritorno a capoTorna alla prima colonna. Abbinato a LF su Windows. Scritto \r.
140E01600001110SOShift outStorico; passava a un set di caratteri alternativo.
150F01700001111SIShift inStorico; tornava al set standard.
161002000010000DLEEscape del collegamento datiStorico; rendeva i byte successivi dati di controllo.
171102100010001DC1Controllo dispositivo 1XON — riprende una trasmissione in pausa. Inviato da Ctrl+Q.
181202200010010DC2Controllo dispositivo 2Controllo di dispositivo storico.
191302300010011DC3Controllo dispositivo 3XOFF — mette in pausa la trasmissione. Inviato da Ctrl+S.
201402400010100DC4Controllo dispositivo 4Controllo di dispositivo storico.
211502500010101NAKConferma negativaRisposta negativa nei vecchi protocolli seriali.
221602600010110SYNInattività sincronaRiempiva il silenzio nei collegamenti sincroni.
231702700010111ETBFine blocco di trasmissioneStorico; terminava un blocco di un messaggio più lungo.
241803000011000CANAnnullaScarta i dati inviati prima di esso.
251903100011001EMFine supportoSegnava la fine fisica di un nastro o di un mazzo di schede.
261A03200011010SUBSostituzioneMarcatore di fine file in DOS e CP/M. Inviato da Ctrl+Z.
271B03300011011ESCEscapeAvvia una sequenza di escape ANSI — colori del terminale e movimenti del cursore.
281C03400011100FSSeparatore di fileIl più grossolano dei quattro separatori di dati.
291D03500011101GSSeparatore di gruppoSepara i gruppi all'interno di un file.
301E03600011110RSSeparatore di recordSepara i record all'interno di un gruppo.
311F03700011111USSeparatore di unitàIl separatore più fine; occasionalmente usato come delimitatore di campo.
1277F17701111111DELDeleteTutti i bit perforati sul nastro perforato, ed è per questo che si trova in cima.

Spazio

32
DecHexOttBinarioCarattereHTMLNome
322004000100000  Spazio

Punteggiatura e simboli

33–47, 58–64, 91–96, 123–126
DecHexOttBinarioCarattereHTMLNome
332104100100001!!Punto esclamativo
342204200100010""Virgolette
352304300100011##Cancelletto
362404400100100$$Simbolo del dollaro
372504500100101%%Segno di percentuale
382604600100110&&E commerciale
392704700100111''Apostrofo
402805000101000((Parentesi tonda sinistra
412905100101001))Parentesi tonda destra
422A05200101010**Asterisco
432B05300101011++Segno più
442C05400101100,,Virgola
452D05500101101--Trattino-meno
462E05600101110..Punto
472F05700101111//Barra
583A07200111010::Due punti
593B07300111011;&#59;Punto e virgola
603C07400111100<&#60;Segno di minore
613D07500111101=&#61;Segno di uguale
623E07600111110>&#62;Segno di maggiore
633F07700111111?&#63;Punto interrogativo
644010001000000@&#64;Chiocciola
915B13301011011[&#91;Parentesi quadra sinistra
925C13401011100\&#92;Barra rovesciata
935D13501011101]&#93;Parentesi quadra destra
945E13601011110^&#94;Accento circonflesso
955F13701011111_&#95;Trattino basso
966014001100000`&#96;Accento grave
1237B17301111011{&#123;Parentesi graffa sinistra
1247C17401111100|&#124;Barra verticale
1257D17501111101}&#125;Parentesi graffa destra
1267E17601111110~&#126;Tilde

Cifre

48–57
DecHexOttBinarioCarattereHTMLNome
4830060001100000&#48;Cifra 0
4931061001100011&#49;Cifra 1
5032062001100102&#50;Cifra 2
5133063001100113&#51;Cifra 3
5234064001101004&#52;Cifra 4
5335065001101015&#53;Cifra 5
5436066001101106&#54;Cifra 6
5537067001101117&#55;Cifra 7
5638070001110008&#56;Cifra 8
5739071001110019&#57;Cifra 9

Lettere

65–90, 97–122
DecHexOttBinarioCarattereHTMLNome
654110101000001A&#65;Lettera maiuscola A
664210201000010B&#66;Lettera maiuscola B
674310301000011C&#67;Lettera maiuscola C
684410401000100D&#68;Lettera maiuscola D
694510501000101E&#69;Lettera maiuscola E
704610601000110F&#70;Lettera maiuscola F
714710701000111G&#71;Lettera maiuscola G
724811001001000H&#72;Lettera maiuscola H
734911101001001I&#73;Lettera maiuscola I
744A11201001010J&#74;Lettera maiuscola J
754B11301001011K&#75;Lettera maiuscola K
764C11401001100L&#76;Lettera maiuscola L
774D11501001101M&#77;Lettera maiuscola M
784E11601001110N&#78;Lettera maiuscola N
794F11701001111O&#79;Lettera maiuscola O
805012001010000P&#80;Lettera maiuscola P
815112101010001Q&#81;Lettera maiuscola Q
825212201010010R&#82;Lettera maiuscola R
835312301010011S&#83;Lettera maiuscola S
845412401010100T&#84;Lettera maiuscola T
855512501010101U&#85;Lettera maiuscola U
865612601010110V&#86;Lettera maiuscola V
875712701010111W&#87;Lettera maiuscola W
885813001011000X&#88;Lettera maiuscola X
895913101011001Y&#89;Lettera maiuscola Y
905A13201011010Z&#90;Lettera maiuscola Z
976114101100001a&#97;Lettera minuscola a
986214201100010b&#98;Lettera minuscola b
996314301100011c&#99;Lettera minuscola c
1006414401100100d&#100;Lettera minuscola d
1016514501100101e&#101;Lettera minuscola e
1026614601100110f&#102;Lettera minuscola f
1036714701100111g&#103;Lettera minuscola g
1046815001101000h&#104;Lettera minuscola h
1056915101101001i&#105;Lettera minuscola i
1066A15201101010j&#106;Lettera minuscola j
1076B15301101011k&#107;Lettera minuscola k
1086C15401101100l&#108;Lettera minuscola l
1096D15501101101m&#109;Lettera minuscola m
1106E15601101110n&#110;Lettera minuscola n
1116F15701101111o&#111;Lettera minuscola o
1127016001110000p&#112;Lettera minuscola p
1137116101110001q&#113;Lettera minuscola q
1147216201110010r&#114;Lettera minuscola r
1157316301110011s&#115;Lettera minuscola s
1167416401110100t&#116;Lettera minuscola t
1177516501110101u&#117;Lettera minuscola u
1187616601110110v&#118;Lettera minuscola v
1197716701110111w&#119;Lettera minuscola w
1207817001111000x&#120;Lettera minuscola x
1217917101111001y&#121;Lettera minuscola y
1227A17201111010z&#122;Lettera minuscola z

FAQ

Qual è la differenza tra ASCII e UTF-8?
ASCII definisce 128 caratteri, numerati da 0 a 127. UTF-8 è una codifica per l'intero Unicode — oltre 150.000 caratteri — e codifica quei primi 128 come byte singoli con esattamente i valori ASCII. Quindi ogni file ASCII è un file UTF-8 valido, ma il contrario vale solo se il testo rimane entro quei 128 caratteri.
Perché la tabella si ferma a 127?
ASCII è uno standard a 7 bit, e 2⁷ è 128. I codici 128–255 non sono ASCII: appartengono a qualunque estensione a 8 bit sia in uso — Windows-1252, ISO-8859-1 e altre — ed è proprio per questo che sono in disaccordo tra loro e che il testo con gli accenti arriva così spesso alterato.
Qual è il codice ASCII dello spazio?
Decimale 32, esadecimale 20. È un carattere stampabile pur non sembrando nulla, ed è per questo che si trova fuori dall'intervallo dei caratteri di controllo, che termina a 31.
Perché DEL è a 127 invece che a 0?
Il nastro perforato. Cancellare un carattere significava perforare ogni foro nella sua posizione, e tutti e sette i bit perforati danno 127. Un carattere cancellato non poteva essere ripristinato, ed è anche da qui che deriva il significato moderno.
Qual è la differenza tra CR e LF?
CR (13) riporta la testina di stampa alla prima colonna; LF (10) avanza di una riga. Unix e macOS terminano le righe con il solo LF, Windows usa CR seguito da LF, e quel disaccordo è il motivo per cui un file può apparire come un'unica riga lunga o con caratteri ^M sparsi.