Che cos'è il codice standard americano per lo scambio di informazioni (ASCII)?

21 Marzo 2024

L'American Standard Code for Information Interchange (ASCII) è uno standard di codifica dei caratteri utilizzato nei computer e nei dispositivi elettronici per rappresentare il testo. Sviluppato all'inizio degli anni '1960, ASCII è stato inizialmente progettato per le apparecchiature di telecomunicazione. Successivamente divenne uno degli standard di codifica più utilizzati per rappresentare lettere, numeri e codici di controllo nei computer e in altri dispositivi digitali.

ASCII utilizza un codice binario a 7 bit per rappresentare 128 caratteri diversi. Ciò include 33 caratteri di controllo non stampabili (che controllano il modo in cui viene elaborato il testo) e 95 caratteri stampabili, incluso l'alfabeto inglese (sia lettere maiuscole che minuscole), cifre (0-9), segni di punteggiatura e alcuni altri simboli.

cos'è l'ascii

Una breve panoramica storica dell'ASCII

All'inizio degli anni '1960, un comitato guidato da Robert W. Bemer sviluppò ASCII per standardizzare il modo in cui i computer rappresentano lettere, numeri e alcuni caratteri di controllo e facilitare la comunicazione tra diversi dispositivi e sistemi.

Nel 1963, l'American Standards Association (ora ANSI, American National Standards Institute) pubblicò per la prima volta ASCII come standard per le apparecchiature di telecomunicazione e informatiche. Cinque anni dopo, fu rilasciata una versione rivista, che aggiungeva lettere minuscole e più caratteri di controllo, espandendo l'ASCII per diventare più versatile e adatto a una gamma più ampia di applicazioni.

Negli anni '1970 e '1980, l'ASCII venne ampiamente adottato su varie piattaforme e tecnologie, affermandosi come lo standard de facto per i file di testo nei computer e in Internet. La sua semplicità ed efficienza lo rendevano ideale per i primi sistemi informatici, che avevano una potenza di elaborazione e una capacità di archiviazione limitate. L'Organizzazione Internazionale per la Standardizzazione (ISO) ha adottato ASCII nel 1986 come parte dello standard ISO/IEC 646, rafforzando il suo status di standard internazionale.

Mentre ASCII è 7-bit il design era sufficiente per i caratteri inglesi, mancava il supporto per altre lingue e simboli speciali. Questa limitazione ha portato allo sviluppo di ASCII esteso e altri schemi di codifica, come ISO 8859-1 (Latin-1), per accogliere caratteri di altre lingue. L'avvento della codifica Unicode e UTF-8 all'inizio degli anni '1990 ha risolto i limiti dell'ASCII fornendo un set di caratteri universale che include tutti i caratteri e i simboli conosciuti di ogni sistema di scrittura nel mondo pur essendo compatibile con ASCII.

Perché ASCII è importante?

ASCII ha un ruolo fondamentale nell'informatica e nella comunicazione digitale per diversi motivi, tra cui:

  • Codifica standardizzata. ASCII ha fornito un modo coerente di codificare i caratteri, consentendo una rappresentazione uniforme dei dati su diversi dispositivi e sistemi.
  • Efficienza e semplicità. Con il suo design a 7 bit, ASCII era efficiente e semplice, rendendolo adatto ai primi computer, che avevano potenza di elaborazione e spazio di archiviazione limitati. La codifica dei caratteri in questo modo ha consentito lo sviluppo delle prime interfacce basate su testo, linguaggi di programmazione e formati di file.
  • Interoperabilità. L'adozione diffusa di ASCII lo ha reso un linguaggio comune per computer e dispositivi. Questa interoperabilità è stata cruciale per la crescita di Internet e lo scambio di informazioni tra diverse piattaforme e tecnologie.
  • Eredità e compatibilità. Molti schemi di codifica moderni, come UTF-8, sono realizzati con compatibilità all'indietro con ASCII. I sistemi che utilizzano questi standard più recenti possono comunque comprendere ed elaborare i dati con codifica ASCII, garantendo la longevità e l'usabilità del contenuto con codifica ASCII.
  • Base per un ulteriore sviluppo. ASCII ha aperto la strada allo sviluppo di standard di codifica più completi come Unicode, che include una gamma più ampia di caratteri per adattarsi a più lingue e simboli. Unicode estende l'idea di base dell'ASCII su scala globale, consentendo la rappresentazione del testo praticamente in tutte le lingue scritte.
  • Valore educativo. Imparare l'ASCII è spesso un punto di partenza per studenti e nuovi programmatori per comprendere meglio la codifica dei caratteri, la rappresentazione binaria dei dati e la storia dell'informatica. Pone le basi per argomenti più complessi di informatica e tecnologia dell'informazione.

Come funziona l'ASCII?

ASCII funziona assegnando un codice binario univoco a 7 bit a ciascun carattere del suo set, consentendo a computer e dispositivi elettronici di rappresentare e manipolare il testo utilizzando dati binari. Questo schema a 7 bit consente 128 combinazioni distinte (2^7) corrispondenti ai 128 caratteri univoci dello standard ASCII. Questi caratteri includono 33 caratteri di controllo (non stampabili), che gestiscono la formattazione del testo e il controllo della trasmissione, e 95 caratteri stampabili, che comprendono l'alfabeto inglese (in maiuscolo e minuscolo), le cifre (0-9), i segni di punteggiatura e una selezione di caratteri simboli speciali.

Rappresentare i caratteri come numeri binari consente un'elaborazione, un'archiviazione e una trasmissione efficienti di informazioni testuali in formato digitale, garantendo l'uniformità tra diversi sistemi informatici e di telecomunicazione. Quando un utente preme un tasto su una tastiera, il corrispondente codice binario ASCII viene generato e inviato al computer, che poi lo elabora come carattere designato. Questo sistema è alla base della creazione, visualizzazione e scambio di testo nella maggior parte dei sistemi informatici, costituendo la base per formati di file, protocolli di trasmissione dati e linguaggi di programmazione.

Caratteri ASCII

ASCII definisce 128 caratteri, suddivisi in due gruppi principali: caratteri di controllo (non stampabili) e caratteri stampabili. Ogni carattere è rappresentato da un numero a 7 bit, compreso tra 0 e 127. Di seguito è riportato un elenco semplificato e la spiegazione di questi caratteri:

Caratteri di controllo (0–31 e 127)

I caratteri di controllo non sono stampabili. Sono utilizzati per controllare il flusso o il formato del testo nei dispositivi e nelle comunicazioni:

0-31: Vari codici di controllo vengono utilizzati per la formattazione del testo o il controllo del dispositivo. Esempi inclusi:

  • 0 (NUL, Nullo): Utilizzato come terminatore di stringa nei linguaggi di programmazione.
  • 7 (BEL, Campana): Fa sì che il dispositivo emetta un avviso acustico.
  • 8 (BS, Indietro): Sposta il cursore indietro di una posizione.
  • 9 (TAB, Tab Orizzontale): Sposta il cursore alla tabulazione successiva.
  • 10 (LF, Avanzamento riga): Sposta il cursore verso il basso alla riga successiva.
  • 13 (CR, Ritorno a capo): Sposta il cursore all'inizio della riga.
  • 27 (ESC, Fuga): Utilizzato per avviare sequenze di fuga.

127 (DEL): Originariamente progettato per indicare la cancellazione di un carattere

Caratteri stampabili (32–126)

I caratteri stampabili includono lettere, cifre, segni di punteggiatura e alcuni simboli speciali:

  • 32 (Spazio): Uno spazio vuoto nel testo.
  • 33-47: Include punteggiatura e simboli come !"#$%&'()*+,-./.
  • 48-57: Rappresenta le cifre 0 a 9.
  • 58-64: Punteggiatura e simboli aggiuntivi inclusi :;<=>?@.
  • 65-90: Lettere maiuscole A a Z.
  • 91-96: Inclusioni [\]^_e apice inverso `.
  • 97-122: Lettere minuscole a a z.
  • 123-126: Simboli {|}~.

Anastasia
Spasojevic
Anastazija è una scrittrice di contenuti esperta con conoscenza e passione per cloud informatica, informatica e sicurezza online. A phoenixNAP, si concentra sulla risposta a domande scottanti su come garantire la robustezza e la sicurezza dei dati per tutti i partecipanti al panorama digitale.