Menu
Coddy logo textTech

ASCII ed esadecimale

Fa parte della sezione Fondamenti del percorso Assembly di Coddy. Lezione 13 di 45.

I computer capiscono solo i numeri. Quindi, come fanno a memorizzare lettere come 'A', 'b' o '?'?

La risposta è ASCII (American Standard Code for Information Interchange). ASCII è una tabella che assegna un numero a ogni carattere.

Come funziona ASCII:

CarattereNumero ASCII (decimale)Numero ASCII (esadecimale)
'A'650x41
'B'660x42
'C'670x43
'a'970x61
'b'980x62
'0'480x30
'1'490x31
' ' (spazio)320x20
'\n' (a capo)100x0A
'\0' (null)00x00

Valori ASCII importanti da memorizzare per l'assembly:

CarattereEsadecimalePerché ti serve
'A'0x41Le lettere maiuscole iniziano qui
'a'0x61Le lettere minuscole iniziano qui
'0'0x30Le cifre iniziano qui
Spazio0x20Per separare le parole
Nuova riga (\n)0x0APer passare alla riga successiva
Nullo (\0)0x00Indicatore di fine stringa

Nota lo schema:

SchemaEsempio
Le lettere maiuscole da A a Z sono consecutive'A'=65, 'B'=66, 'C'=67...
Le lettere minuscole da a a z sono consecutive'a'=97, 'b'=98, 'c'=99...
Le cifre da 0 a 9 sono consecutive'0'=48, '1'=49, '2'=50...
Minuscola = maiuscola + 32'a' (97) = 'A' (65) + 32

Come viene memorizzata una stringa in memoria:

La parola "Hi" con un carattere di nuova riga viene memorizzata come:

CarattereEsadecimaleBinario
'H'0x4801001000
'i'0x6901101001
'\n'0x0A00001010

In assembly, lo scrivi così: db 'Hi', 0x0A

Perché ti serve per l'assembly:

Quando definisci una stringa in data.asm, stai memorizzando codici ASCII in memoria. Quando stampi una stringa, il sistema operativo legge quei codici ASCII e visualizza i caratteri corrispondenti.

Provalo tu

Questa lezione non include una sfida di codice.

quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti

Esercitati da solo: Playground Assembly