Google Play badge

codice ascii


ASCII: come i computer memorizzano lettere e simboli

La grande idea

I computer usano i numeri. Le persone usano lettere e simboli. Abbiamo bisogno di un ponte. ASCII è quel ponte. ASCII trasforma ogni lettera o simbolo in un numero. Il computer memorizza il numero. Quando leggiamo, il computer mostra di nuovo la lettera. È così che funziona il testo in molti file e app.

Perché i computer hanno bisogno di un codice

Un computer funziona con l'elettricità. Vede due stati. Acceso e Spento. Chiamiamo questi stati bit . Un bit è uno 0 o un 1. Molti bit insieme formano numeri più grandi. Otto bit formano un byte . Con i bit, possiamo contare. Con il conteggio, possiamo dare un nome alle cose. ASCII usa il conteggio per dare un nome a lettere e simboli.

Un bit fa due scelte. Due bit fanno quattro scelte. In matematica, questo concetto è rappresentato come \(\;2^n\) . Per \(n=7\) , otteniamo \(2^7 = 128\) scelte. Per \(n=8\) , otteniamo \(2^8 = 256\) scelte. L'ASCII usa 7 bit. Questo dà 128 elementi denominati. In seguito si sono creati insiemi di 8 bit con 256 elementi. Questi sono chiamati ASCII estesi .

Cosa significa ASCII

ASCII è l'acronimo di American Standard Code for Information Interchange . È nato negli anni '60. È stato sviluppato per le prime stampanti, telescriventi e computer. Assegna un numero a ogni lettera, numero, spazio e ad alcuni simboli. Assegna anche numeri speciali ad azioni come il ritorno a capo . La prima versione utilizzava 7 bit, quindi aveva numeri da 0 a 127.

Cosa c'è dentro ASCII
Esempi di mappe semplici

Notate una cosa interessante. Le lettere minuscole sono 32 in più rispetto alle loro coppie maiuscole. Ad esempio, \(\;97 - 65 = 32\) . Quindi 'a' è 32 in più di 'A'. 'b' è 32 in più di 'B', e così via. Questo schema semplifica alcune operazioni al computer.

Caratteri di controllo in parole semplici

Quando si preme il tasto Invio, il computer potrebbe inviare LF, CR o entrambi, a seconda del sistema. Molti strumenti Internet utilizzano LF. Alcuni vecchi sistemi utilizzavano CR e LF insieme.

Visualizzazioni decimali, binarie ed esadecimali

Possiamo scrivere i numeri in diversi modi. Il sistema decimale è il metodo di conteggio più comune, usando le cifre da 0 a 9. Il sistema binario usa solo 0 e 1. Il sistema esadecimale usa le cifre da 0 a 9 e da A a F.

Come fa il sistema binario a calcolare 65 per 'A'? Osserva i bit in 01000001. Il bit più a sinistra è per 128. Poi 64, 32, 16, 8, 4, 2, 1. Solo 64 e 1 sono attivi. Quindi \(01000001_{(2)} = 0\times128 + 1\times64 + 0\times32 + 0\times16 + 0\times8 + 0\times4 + 0\times2 + 1\times1 = 65\) .

Dalla tastiera allo schermo

Premi un tasto. La tastiera invia un codice al computer. Il sistema lo converte in un numero di carattere. Per molti tasti, quel numero è il codice ASCII. L'app memorizza il numero. Quando mostra il testo, cerca il numero e disegna la lettera. Quando salvi, i numeri vengono inseriti nel file.

Come viaggia il testo attraverso una rete

Pensa al messaggio "Ciao!" . Le lettere sono H, i e !. I loro numeri ASCII sono 72, 105 e 33. In binario, sono 01001000, 01101001 e 00100001. La rete invia questi bit. L'altra parte legge i bit. Vede i numeri. Mostra di nuovo H, i e !. Ecco come si muovono i semplici messaggi di testo.

ASCII esteso e pagine di codice

La gente voleva più simboli. Volevano lettere come é, ñ e ø. Volevano simboli monetari come €. Il set a 7 bit aveva solo 128 simboli. Quindi si usavano 8 bit. Con 8 bit, otteniamo \(2^8 = 256\) simboli. La metà superiore, da 128 a 255, veniva utilizzata per lettere e simboli aggiuntivi. Ma c'era un problema. Gruppi diversi sceglievano numeri diversi per quelle lettere aggiuntive. Queste scelte sono chiamate code page .

Poiché le code page sono diverse, lo stesso numero può visualizzare un simbolo diverso su un altro computer. Questo errore si chiama mojibake . Sembrano caratteri strani. Questo è uno dei motivi per cui il mondo è passato a Unicode.

ASCII e Unicode

Unicode è un grande standard che supporta numerose lingue, simboli matematici ed emoji. Può contenere oltre un milione di simboli. Esistono molti modi per memorizzare Unicode. Uno dei metodi più diffusi è UTF-8 .

Quanti byte usa il testo?

Con il testo solo ASCII, ogni carattere occupa un byte. Quindi la parola "gatto " occupa 3 byte. La frase "ciao mamma" ha 6 caratteri, incluso lo spazio, quindi occupa 6 byte. In matematica semplice, \(\textrm{byte ASCII} = \textrm{numero di caratteri}\) .

Ordine di ordinamento con ASCII

I computer spesso ordinano le stringhe in base al numero dei caratteri. L'ordinamento ASCII raggruppa gli elementi in un certo modo.

Ciò significa che Zoo viene prima di Apple se confrontiamo semplici valori ASCII. L'ordinamento avviene in base ai numeri, non in base al suono delle parole.

Codici ASCII comuni da conoscere

Nota che la e commerciale è &. Il suo numero ASCII è 38. Il segno più + è 43. Il segno meno - è 45.

Utilizzi reali nella tecnologia quotidiana
Modelli ASCII che aiutano
Come si possono realizzare immagini con ASCII

Le persone creano immagini usando solo caratteri. Questo è chiamato ASCII art . Ecco un piccolo volto realizzato con caratteri ASCII.

:-) Un sorriso semplice
(^_^) Volto amichevole
o_O Sorpreso

Ogni faccia è composta solo da caratteri come due punti, trattini e parentesi. Nessun colore o forma. Solo testo.

La storia in breve, in parole semplici

L'ASCII si è sviluppato a partire dalle telescriventi e dai primi computer. Nel 1963, ne fu concordata una prima versione. Aiutò molte macchine diverse a comunicare tra loro. Con un codice condiviso, una lettera come la A significava lo stesso numero ovunque. Questo rendeva più facile inviare messaggi e stampare testo.

Quando ASCII non basta

ASCII ha solo 128 elementi. Non è sufficiente per tutte le lingue. Non può visualizzare il cinese, l'hindi, l'arabo o molti altri sistemi di scrittura. Non può visualizzare gli emoji. Inoltre, non può visualizzare molti simboli matematici e musicali. Per questi, utilizziamo Unicode. Unicode può visualizzare molti sistemi di scrittura e simboli. UTF-8 è un modo per memorizzarli. La buona notizia è che tutto il testo ASCII funziona all'interno di UTF-8. Quindi i sistemi moderni possono leggere facilmente il vecchio ASCII.

Come le app gestiscono ASCII oggi

La maggior parte delle app si aspetta UTF-8. Ma quando un file contiene solo lettere e simboli ASCII, appare identico anche in UTF-8. I programmatori apprezzano questa caratteristica perché semplifica le cose. Pagine web, API e molti strumenti utilizzano UTF-8, che include ASCII senza modifiche.

Fatti sui piccoli numeri e matematica amichevole

ASCII è un set di 7 bit. Ciò significa fino a \(2^7 = 128\) caratteri diversi. Un set esteso a 8 bit ha \(2^8 = 256\) elementi. Se il testo contiene solo caratteri ASCII e contiene \(n\) caratteri, utilizza \(n\) byte. In un messaggio minuscolo come OK , \(n = 2\) . Quindi utilizza 2 byte quando viene memorizzato come ASCII o UTF-8.

Vedere personaggi nascosti

Alcuni elementi ASCII eseguono azioni e non stampano. Lo spazio stampa uno spazio vuoto. Ma LF e CR spostano il cursore. Il tasto TAB salta. Quando apriamo un file in un editor speciale, LF potrebbe essere visualizzato come \n. Quel simbolo non fa parte del codice ASCII. È un modo in cui l'editor mostra l'interruzione di riga.

Esempi semplici che sembrano reali
Cose da tenere d'occhio
Come i dispositivi utilizzano ASCII in semplici passaggi

Immagina un'etichettatrice che stampa i nomi. Legge il nome come caratteri. Trasforma ogni carattere in numeri ASCII. Memorizza questi numeri in memoria. Stampa le lettere cercando come disegnare ogni numero. Se soddisfa LF (10), passa alla riga successiva prima di stampare altro.

Confronto di tre modi per scrivere il codice di un personaggio

Di nuovo, osserviamo il carattere '!'. Possiamo scrivere il suo codice in tre modi. Decimale: 33. Binario: 00100001. Esadecimale: 21. In forma matematica, \(\;33_{(10)} = 00100001_{(2)} = 21_{(16)}\) . Ogni forma rappresenta lo stesso valore. Le app scelgono la forma di cui hanno bisogno. Le persone spesso leggono i numeri decimali. I computer preferiscono il binario. Esadecimale è un modo abbreviato per leggere i numeri binari.

Perché ASCII è durato così a lungo

L'ASCII è piccolo e chiaro. È stato creato in anticipo. Molti strumenti e protocolli sono stati sviluppati su di esso. Poiché i primi 128 codici Unicode corrispondono all'ASCII, il piano funziona ancora oggi. Ecco perché è possibile aprire file di testo molto vecchi su un nuovo telefono o laptop e vedere le stesse lettere.

Mini guida: lettura di un breve file

Apri un file con il testo Hello . I byte sono i numeri ASCII 72 101 108 108 111. In binario, sono 01001000 01100101 01101100 01101100 01101111. L'app legge ogni numero e disegna Hello sullo schermo. Se il numero successivo è 10, si sposta su una nuova riga prima di disegnare altro testo. Ecco quanto è semplice e costante il processo.

Quando scegliere solo ASCII
Simboli chiave che le persone usano spesso
Controllo rapido delle idee di bit con numeri piccoli

Pensate al numero 10. In binario, è 00001010. In decimale, è dieci. In ASCII, 10 è LF, il line feed. Questo dimostra come lo stesso numero possa essere rappresentato in modi diversi. Il significato deriva da come usiamo il numero. Se diciamo che è un codice di carattere, allora 10 significa LF. Se diciamo che è solo un conteggio di mele, allora sono dieci mele. Il contesto è importante.

Riunendo il tutto con un altro esempio

Invieremo la parola Sun da un dispositivo all'altro. I codici sono 'S' 83, 'u' 117, 'n' 110. In binario, 83 è 01010011, 117 è 01110101, 110 è 01101110. I bit viaggiano come segnali On e Off. L'altro dispositivo trasforma i bit in numeri. Poi trasforma i numeri in lettere. Mostra la parola Sun. Se il codice successivo è 32, è uno spazio. Se il successivo è 33, è un '!'. Le regole rimangono le stesse ogni volta. Questa è la potenza di un codice condiviso.

Download Primer to continue