Quire
Esistono 96 caratteri ASCII stampabili, numerati da 32 a 127. Il centoventisettesimo indica il comando DEL.
Esistono 96 caratteri ASCII stampabili, numerati da 32 a 127. Il centoventisettesimo indica il comando DEL. Image: source and license

ASCII (acronimo di American Standard Code for Information Interchange, lett. "codice standard americano per lo scambio di informazioni") è un codice per la codifica di caratteri. La prima edizione dello standard ASCII è stata pubblicata dall'American National Standards Institute (ANSI) nel 1963[1], quindi il codice ha subito un'importante revisione nel 1968[2]. L'aggiornamento più recente risale al 1986[3]. In italiano viene pronunciato aschi /ˈaski/ o asci /ˈaʃʃi/[4], mentre la pronuncia originale inglese è askey /ˈæski/.

L'asteroide 3568 ASCII prende il nome da questa codifica dei caratteri.

Storia#edit

Tabella ASCII del 1967
Tabella ASCII del 1967 Image: source and license

Con US-ASCII si intende un sistema di codifica dei caratteri a 8 bit, comunemente utilizzato nei calcolatori, proposto dall'ingegnere dell'IBM Bob Bemer nel 1961, e successivamente accettato come standard dall'ISO, con il nome di ISO/IEC 646.

Alla specifica iniziale basata su codici di 7 bit fecero seguito negli anni molte proposte di estensione ad 8 bit, con lo scopo di raddoppiare il numero di caratteri rappresentabili.

Tuttavia nessuna estensione è uno standard internazionale. Nei personal computer si fa e si faceva uso di una serie di estensioni locali e configurabili in base al paese, spesso indicate con extended ASCII o high ASCII e non sono mai standard, per esempio queste codifiche sono differenti da paese a paese e una stessa nazione può avere più codifiche differenti attivabili, inoltre il set utilizzato in sistemi operativi come CP/M era diverso per ogni produttore, e a sua volta differente dai set utilizzati in MS-DOS, a sua volta diverso da quelli di Windows, Linux e MacOS. Inoltre i set multipli e localizzati sono nemmeno univoci perché ogni sistema, come MS-DOS, ha spesso più sotto-sistemi di estensione (codepage). Per esempio alcuni sistemi usano delle sottopagine dello standard 646, nei Mac c'era la gestione Mac Roman, in MS-DOS si usavano spesso sotto-pagine dei codepage 437, 850, 852, 1252, ISO 8859-1 in occidente (ognuno con una serie di sotto-pagine), del 866 nell'ex blocco sovietico In questo ASCII esteso, i caratteri aggiunti sono ad esempio vocali accentate, simboli semigrafici e altri simboli di uso meno comune, pensati anche per adattarsi alle specificità delle diverse lingue[5]. A sua volta il problema della rappresentazione nelle varie lingue è stato superato dalle codifiche Escape e dai codici ANSI, e poi esteso e uniformato con i vari standard Unicode, mentre l'unico ASCII davvero standard rimane quello a 7 bit. L'ottavo bit può essere utilizzato per estensioni più o meno personalizzate oppure per il controllo di parità nelle trasmissioni, cosa che avviene per esempio nelle trasmissioni seriali con RS-232C (oggi incapsulata nelle porte USB per i PC domestici), RS-485 e RS-488.

ASCII ed UTF-8#edit

Lo standard successore di ASCII è l'UTF-8, che è diventato la codifica principale di Unicode per internet secondo il W3C, che pur non impedendo altre codifiche (purché correttamente dichiarate), lo consiglia e lo usa quasi sistematicamente negli esempi del suo sito[6], fornendo anche le istruzioni per convertire i documenti (cosa che non fornisce per tutte le codifiche)[7]. Questa codifica di Unicode, che ormai è universalmente accettata da ogni nuovo programma, offre caratteristiche interessanti grazie al fatto di sfruttare il bit di controllo del vecchio ASCII in modo più efficiente. Se da una parte lo prepara per la pensione, UTF-8 in un certo senso ha reso molto più longevo l'ASCII, inglobandolo in una codifica più adatta alle esigenze attuali. Infatti le comunicazioni sono in centinaia di lingue, ed inoltre diverse lingue possono convivere in uno stesso documento, o in uno stesso programma: si pensi ai software di messaggistica istantanea che possono contenere contatti da varie parti del mondo dei quali visualizzare correttamente i nomi.

UTF-8 infatti si distingue dalle altre codifiche Unicode perché sfrutta il vecchio bit di parità di ASCII, non come bit di controllo, bensì come indicatore: analizza ogni byte, e se al posto del vecchio bit di parità c'è 0, allora il byte sarà letto come ASCII a 7 bit e teoricamente compatibile anche con programmi obsoleti; se però il byte corrente inizia con 1, allora sarà concatenato al byte successivo (o ai successivi, in realtà il meccanismo è un poco più complesso). In tal modo riesce ad includere tutti gli alfabeti delle lingue viventi, di alcune morte e potenzialmente può essere esteso per rappresentarne ancora altri (infatti spesso viene aggiornato).

Il vantaggio è che è possibile scrivere un testo in Italiano ed usare un numero di byte di poco maggiore rispetto ad una codifica di ASCII esteso (le lettere accentate occupano solo 4 byte in più); un testo in lingua Cinese avrà ogni carattere di tre byte, con numeri, lettere, punteggiatura ed altri eventuali caratteri ASCII presenti nel testo di un solo byte.

Tabella dei caratteri#edit

La tabella seguente è relativa al codice US ASCII, ANSI X3.4-1986 (ISO 646 International Reference Version). I codici decimali da 0 a 31 e il 127 sono caratteri non stampabili (caratteri di controllo). Il 32 corrisponde al carattere di "spazio". I codici dal 32 al 126 sono caratteri stampabili.

Stampabili#edit

Tabella di conversione da esadecimale a caratteri
Tabella di conversione da esadecimale a caratteri Image: source and license
BinarioOctDecHexGlifo
010 00000403220Spazio
010 00010413321!
010 00100423422"
010 00110433523#
010 01000443624$
010 01010453725%
010 01100463826&
010 01110473927'
010 10000504028(
010 10010514129)
010 1010052422A*
010 1011053432B+
010 1100054442C,
010 1101055452D-
010 1110056462E.
010 1111057472F/
011 000006048300
011 000106149311
011 001006250322
011 001106351333
011 010006452344
011 010106553355
011 011006654366
011 011106755377
011 100007056388
011 100107157399
011 1010072583A:
011 1011073593B;
011 1100074603C<
011 1101075613D=
011 1110076623E>
011 1111077633F?
BinarioOctDecHexGlifo
100 00001006440@
100 00011016541A
100 00101026642B
100 00111036743C
100 01001046844D
100 01011056945E
100 01101067046F
100 01111077147G
100 10001107248H
100 10011117349I
100 1010112744AJ
100 1011113754BK
100 1100114764CL
100 1101115774DM
100 1110116784EN
100 1111117794FO
101 00001208050P
101 00011218151Q
101 00101228252R
101 00111238353S
101 01001248454T
101 01011258555U
101 01101268656V
101 01111278757W
101 10001308858X
101 10011318959Y
101 1010132905AZ
101 1011133915B[
101 1100134925C\
101 1101135935D]
101 1110136945E^
101 1111137955F_
BinarioOctDecHexGlifo
110 00001409660`
110 00011419761a
110 00101429862b
110 00111439963c
110 010014410064d
110 010114510165e
110 011014610266f
110 011114710367g
110 100015010468h
110 100115110569i
110 10101521066Aj
110 10111531076Bk
110 11001541086Cl
110 11011551096Dm
110 11101561106En
110 11111571116Fo
111 000016011270p
111 000116111371q
111 001016211472r
111 001116311573s
111 010016411674t
111 010116511775u
111 011016611876v
111 011116711977w
111 100017012078x
111 100117112179y
111 10101721227Az
111 10111731237B{
111 11001741247C|
111 11011751257D}
111 11101761267E~

ASCII art#edit

Esiste anche un tipo di arte, chiamata ASCII art, che consiste nel creare immagini con i caratteri dell'alfabeto ottenendo una grossolana scala di grigi sfruttando il riempimento del carattere.

Ecco un esempio di "ASCII art".
Ecco un esempio di "ASCII art". Image: source and license

Note#edit

  1. ^ CNN - 1963: The debut of ASCII - July 6, 1999, su edition.cnn.com. URL consultato il 21 marzo 2022 (archiviato dall'url originale il 17 giugno 2013).
  2. ^ World Power Systems:Texts:Annotated history of charactercodes, su www.sr-ix.com. URL consultato il 21 marzo 2022 (archiviato dall'url originale il 22 maggio 2016).
  3. ^ Federal Information Processing Standards Publication: code extension techniques for use with the 7-bit coded character set of American national standard code for information interchange, National Bureau of Standards, 1974. URL consultato il 21 marzo 2022.
  4. ^ ASCII, in Treccani.it – Vocabolario Treccani on line, Roma, Istituto dell'Enciclopedia Italiana.
  5. ^ ASCII-American-Standard-Code-for-Information-Interchange, su IONOS Digitalguide. URL consultato il 21 marzo 2022.
  6. ^ (EN) Character encodings, su W3C. URL consultato il 22 giugno 2015.
  7. ^ (EN) Changing an HTML page encoding to UTF-8, su W3C. URL consultato il 22 giugno 2015.

Bibliografia#edit

Voci correlate#edit

Altri progetti#edit

  • Wikizionario contiene il lemma di dizionario «ASCII»
  • Wikimedia Commons contiene immagini o altri file sull'ASCII

Collegamenti esterni#edit

This article is mirrored from “ASCII” on Italiano Wikipedia, revision 152268483, written by Wikipedia's contributors and licensed CC BY-SA 4.0. Editing it here creates a Quire copy with its own history.

Synced with Wikipedia revision 152268483 · just now