🔧Toolify

Tabella ASCII — Decimale, Hex, Binario e Ottale

Consulta tutti i 128 codici ASCII (0–127) con le loro rappresentazioni in decimale, esadecimale, ottale e binario. I caratteri di controllo (0–31, 127) sono evidenziati e etichettati con le loro abbreviazioni standard e i nomi completi. Filtra per mostrare solo i caratteri stampabili o solo i codici di controllo, e cerca per numero decimale, valore hex o carattere.

DecHexCar.Descrizione
00x00NULNUL — Null
10x01SOHSOH — Start of Heading
20x02STXSTX — Start of Text
30x03ETXETX — End of Text
40x04EOTEOT — End of Transmission
50x05ENQENQ — Enquiry
60x06ACKACK — Acknowledge
70x07BELBEL — Bell
80x08BSBS — Backspace
90x09HTHT — Horizontal Tab
100x0ALFLF — Line Feed
110x0BVTVT — Vertical Tab
120x0CFFFF — Form Feed
130x0DCRCR — Carriage Return
140x0ESOSO — Shift Out
150x0FSISI — Shift In
160x10DLEDLE — Data Link Escape
170x11DC1DC1 — Device Control 1 (XON)
180x12DC2DC2 — Device Control 2
190x13DC3DC3 — Device Control 3 (XOFF)
200x14DC4DC4 — Device Control 4
210x15NAKNAK — Negative Acknowledge
220x16SYNSYN — Synchronous Idle
230x17ETBETB — End of Transmission Block
240x18CANCAN — Cancel
250x19EMEM — End of Medium
260x1ASUBSUB — Substitute
270x1BESCESC — Escape
280x1CFSFS — File Separator
290x1DGSGS — Group Separator
300x1ERSRS — Record Separator
310x1FUSUS — Unit Separator
320x20 SP — Space
330x21!
340x22"
350x23#
360x24$
370x25%
380x26&
390x27'
400x28(
410x29)
420x2A*
430x2B+
440x2C,
450x2D-
460x2E.
470x2F/
480x300
490x311
500x322
510x333
520x344
530x355
540x366
550x377
560x388
570x399
580x3A:
590x3B;
600x3C<
610x3D=
620x3E>
630x3F?
640x40@
650x41A
660x42B
670x43C
680x44D
690x45E
700x46F
710x47G
720x48H
730x49I
740x4AJ
750x4BK
760x4CL
770x4DM
780x4EN
790x4FO
800x50P
810x51Q
820x52R
830x53S
840x54T
850x55U
860x56V
870x57W
880x58X
890x59Y
900x5AZ
910x5B[
920x5C\
930x5D]
940x5E^
950x5F_
960x60`
970x61a
980x62b
990x63c
1000x64d
1010x65e
1020x66f
1030x67g
1040x68h
1050x69i
1060x6Aj
1070x6Bk
1080x6Cl
1090x6Dm
1100x6En
1110x6Fo
1120x70p
1130x71q
1140x72r
1150x73s
1160x74t
1170x75u
1180x76v
1190x77w
1200x78x
1210x79y
1220x7Az
1230x7B{
1240x7C|
1250x7D}
1260x7E~
1270x7FDELDEL — Delete

Visualizzazione di 128 su 128 codici ASCII

Come funziona

Che cos'è ASCII?

ASCII (American Standard Code for Information Interchange) è uno standard di codifica dei caratteri pubblicato originariamente nel 1963. Definisce 128 caratteri: 33 caratteri di controllo non stampabili (codici 0–31 e 127) e 95 caratteri stampabili (codici 32–126), incluse lettere maiuscole e minuscole inglesi, le cifre 0–9 e i segni di punteggiatura più comuni. ASCII è diventato il fondamento di praticamente tutte le codifiche di testo moderne, incluso UTF-8, che è retrocompatibile con ASCII per i primi 128 punti di codice.

A ogni carattere ASCII viene assegnato un valore intero a 7 bit, motivo per cui la tabella si ferma a 127 (2⁷ − 1). Quando viene memorizzato in un byte di 8 bit, il bit più significativo è tipicamente 0 per l'ASCII standard. L'intervallo ASCII esteso (128–255) non è standardizzato dalla specifica originale e varia a seconda della code page — ISO 8859-1, Windows-1252 e codifiche simili definiscono ciascuna un diverso insieme di caratteri per la metà superiore del byte.

Caratteri di controllo (0–31 e 127)

I primi 32 codici ASCII e il codice 127 sono caratteri di controllo non stampabili ereditati dalle convenzioni delle macchine telescriventi. La maggior parte è obsoleta nell'informatica moderna, ma alcuni rimangono importanti: il codice 9 (HT, tabulazione orizzontale), il codice 10 (LF, avanzamento riga o nuova riga su Unix/Linux), il codice 13 (CR, ritorno a capo, usato nelle terminazioni di riga Windows come CR+LF), il codice 27 (ESC, Escape, usato nelle sequenze di escape del terminale) e il codice 127 (DEL). Questi caratteri non vengono visualizzati come glifi visibili.

Sui sistemi simili a Unix, è possibile generare caratteri di controllo in un terminale tenendo premuto Ctrl e premendo la lettera corrispondente: Ctrl+A = SOH (1), Ctrl+C = ETX (3, invia segnale di interruzione), Ctrl+D = EOT (4, segnala la fine dell'input), Ctrl+J = LF (10), Ctrl+M = CR (13), Ctrl+Z = SUB (26, sospende un processo su Unix). La comprensione di questi codici è essenziale per l'I/O di basso livello, le sequenze di controllo del terminale e l'implementazione di protocolli di rete.

ASCII nella programmazione e nello sviluppo web

In JavaScript è possibile ottenere il codice ASCII di un carattere usando charCodeAt(0): 'A'.charCodeAt(0) restituisce 65. Per la conversione inversa, String.fromCharCode(65) restituisce 'A'. In Python, ord('A') restituisce 65 e chr(65) restituisce 'A'. In C, i valori char sono interi e possono essere usati direttamente nelle operazioni aritmetiche: 'A' + 1 equivale a 'B'.

I valori ASCII sono la base di molti schemi di programmazione comuni. La differenza tra lettere maiuscole e minuscole è sempre 32: 'a' (97) = 'A' (65) + 32. Le cifre 0–9 occupano i codici 48–57, quindi sottraendo 48 dal valore ASCII di un carattere cifra si ottiene il suo valore numerico. La codifica URL rappresenta i caratteri non sicuri per URL come %XX, dove XX è il codice ASCII in hex, rendendo questa tabella indispensabile per il debug di stringhe codificate in URL e intestazioni HTTP.

Domande frequenti

Qual è il codice ASCII per Invio / nuova riga?

Il carattere di nuova riga (avanzamento riga) è il codice ASCII 10 (0x0A, LF). Su Unix/Linux/macOS, una nuova riga è rappresentata solo da LF. Su Windows, è rappresentata da CR+LF (codici 13 e 10, ossia 0x0D 0x0A). Il carattere di ritorno a capo è il codice 13 (0x0D, CR). Quando si scrive codice di elaborazione del testo multipiattaforma, gestire sempre entrambe le terminazioni di riga: LF e CR+LF.

Qual è il codice ASCII del carattere spazio?

Il carattere spazio è il codice ASCII 32 (0x20, SP). È il primo carattere stampabile di ASCII. Lo spazio non divisibile (usato in HTML come &nbsp;) non fa parte dell'ASCII standard a 7 bit — è il codice 160 (0xA0) in ISO 8859-1 e UTF-8 (codificato come 0xC2 0xA0 in UTF-8).

Qual è la differenza tra ASCII, UTF-8 e Unicode?

ASCII definisce 128 caratteri con codici a 7 bit. Unicode è uno standard universale che definisce oltre 140.000 caratteri con punti di codice fino a U+10FFFF. UTF-8 è una codifica a larghezza variabile di Unicode: codifica i caratteri ASCII (0–127) in un singolo byte, rendendolo retrocompatibile con ASCII. I caratteri oltre 127 utilizzano 2–4 byte in UTF-8. I moderni sistemi di testo utilizzano UTF-8 o UTF-16, ma ASCII rimane importante per le intestazioni di protocollo, i formati di file e i sistemi legacy.

Come si trova il codice ASCII di un carattere in JavaScript?

Usa charCodeAt(0): 'A'.charCodeAt(0) restituisce 65. Per i punti di codice Unicode superiori a 65535, usa codePointAt(0). Per convertire un codice in un carattere: String.fromCharCode(65) restituisce 'A'. Per il supporto Unicode completo: String.fromCodePoint(128512) restituisce l'emoji 😀.

Cosa fa il codice ASCII 0 (NUL)?

NUL (codice 0) è il carattere nullo. In C e in molti altri linguaggi viene utilizzato come terminatore di stringa — la stringa 'Hello' è memorizzata in memoria come i byte 72, 101, 108, 108, 111, 0. Nei database e nei formati di file, NUL può comparire come separatore di campo o byte di riempimento. Nella maggior parte degli editor di testo e dei terminali, NUL è invisibile e ignorato, ma può causare problemi quando si leggono file binari come testo.

Che cos'è il carattere Escape (ASCII 27)?

ESC (codice 27, 0x1B) è il carattere Escape. È l'inizio delle sequenze di escape ANSI/VT100, che controllano i colori del terminale e il movimento del cursore. Ad esempio, la sequenza ESC[31m cambia il colore del testo del terminale in rosso. In molte applicazioni, premendo il tasto Escape viene inviato questo carattere. Viene anche utilizzato in vari formati di dati e protocolli di comunicazione.

Perché la lettera maiuscola A ha il codice ASCII 65 e la minuscola a ha il codice 97?

La tabella ASCII è stata progettata in modo che le lettere maiuscole (A=65, B=66, …, Z=90) e le minuscole (a=97, b=98, …, z=122) differiscano esattamente di 32. Ciò consente di convertire tra maiuscolo e minuscolo con una singola addizione o sottrazione. Per convertire le maiuscole in minuscole in ASCII: aggiungi 32 (o imposta il bit 5). Per convertire le minuscole in maiuscole: sottrai 32 (o cancella il bit 5). Ecco perché la conversione di maiuscole/minuscole a livello di bit funziona in C: char lower = upper | 0x20.

Qual è la differenza tra CR, LF e CRLF?

CR (Carriage Return, codice 13) e LF (Line Feed, codice 10) derivano dalle convenzioni delle macchine da scrivere e dei telescriventi. CR sposta la testina di stampa all'inizio della riga; LF avanza alla riga successiva. Unix/Linux usa solo LF per le nuove righe. Windows usa CR+LF (entrambi insieme). Il Mac OS classico (prima di OS X) usava solo CR. La maggior parte dei parser moderni gestisce tutti e tre i formati, ma mescolare le terminazioni di riga nei file sorgente causa problemi con i diff dei sistemi di controllo versione e con alcuni processori di testo.

Strumenti correlati

Ultimo aggiornamento:

Prova i nostri prompt IA →