Cosa sono i file ASCII (o di testo)

Sono decenni che la computer-graphics è affermata. Ma in princpio c’era altro…

Conversione

Un calcolatore, sia una semplice calcolatrice, o un potente server, elaborano esclusivamente numeri. Anzi solo due numeri: 1 e 0.

Però se guardiamo la tastiera del nostro computer abbiamo molti altri simboli oltre allo zero e all’uno. Come logica conseguenza è necessaria una codifica da numeri a simboli: ad ogni tasto deve corrispondere quindi un numero.

Codice ASCII

Una delle codifiche è il codice ASCII.

ASCII è un acronimo di American Standard Code for Information Interchange, in pratica un gruppo di aziende produttrici di computer, si misero d’accordo per dare ai simboli (=caratteri della tastiera) lo stesso codice (o valore). Questo standard permetteva quindi di poter trasferire delle informazioni da un computer ad un altro senza perderne il contenuto: quindi la “m” vale “m” in tutti i computer.

Ovviamente non c’era solo ASCII: un grosso costruttore di calcolatori, IBM, creò il suo codice, l’EBCDIC. In sostanza di crearono due mondi: mainframe IBM e resto del mondo. Va infatti ricordato che al suo massimo sviluppo IBM da sola possedeva il 70% del mercato informatico mondiale.

Ad oggi lo standard prevalente è quello ASCII.

Byte e ASCII

Il byte è “mattone” su cui si basano i file. Come noto è composto da 8 bit, ovvero da una serie 8 numeri compresi tra “1” e “0”.

Un byte può contenere numeri da 0 a 255, quindi 256 cifre (contando lo zero). Questo perchè 2^8=256, ovvero, una serie di 8 cifre che possono avere due valori, danno 256 combinazioni.

Quindi avere a disposizione 256 numeri permette di codificare tutte le tastiere occidentali (lettere accentate, ecc.).

Non solo caratteri

La codifica ASCII è composta da 3 parti:

  • codici di controllo
  • alfanumerici fino a 127
  • alfanumerici “estesi” fino a 255

I codici di controllo non sono caratteri stampabili, ma servono per gestire i testi o le comunicazioni. Per esempio premendo il tasto “invio” viene in realtà inserito il codice CR (carriage-return) che non è visibile, ma che viene in ogni modo gestito.

32
33 !
34
35 #
36 $
37 %
38 &
39
40 (
41 )
42 *
43 +
44 ,
45
46 .
47 /
48 0
49 1
50 2
51 3
52 4
53 5
54 6
55 7
56 8
57 9
58 :
59 ;
60 <
61 =
62 >
63 ?
64 @
65 A
66 B
67 C
68 D
69 E
70 F
71 G
72 H
73 I
74 J
75 K
76 L
77 M
78 N
79 O
80 P
81 Q
82 R
83 S
84 T
85 U
86 V
87 W
88 X
89 Y
90 Z
91 [
92 \
93 ]
94 ^
95 _
96 `
97 a
98 b
99 c
100 d
101 e
102 f
103 g
104 h
105 i
106 j
107 k
108 l
109 m
110 n
111 o
112 p
113 q
114 r
115 s
116 t
117 u
118 v
119 w
120 x
121 y
122 z
123 {
124 |
125 }
126 ~

 

Come scrivere un simbolo mancante

Non tutte le tastiere sono uguali. Se manca un simbolo è possibile comunque crearlo, usando una opportuna combinazione di tasti.

Per esempio il simbolo tilde, rappresentato da una “onda” ha il valore 126. Per crearlo basta tenere premuto il tasto Alt seguito dai numeri del tastierino numerico, 1, 2 e 6.

Dove troviamo i file ASCII?

Un file ASCII è un file che contiene del testo non formattato, cioè che non contiene marcatori quali neretto, titoli, ecc.

Ad esempio sono file ASCII:

file ASCII presente in c:\windows. win.ini
  • file di configurazione
  • sorgenti di programmi
  • programmi da interpretare:
    • HTML, XML, Java, C/C++,…

 

 

Come modificare un file di testo

Per creare o modificare un file di testo la cosa più semplice è usare un editor-ASCII.

In Internet vi è una ampia scelta: alcuni molto semplici ed altri adatti alla programmazione, ecco un breve elenco:

NOME AMBIENTE LICENZA SITO
Notepad Windows nativo
Ultraedit Windows 99USD https://www.ultraedit.com/
Notepad++ Windows free https://notepad-plus-plus.org
Atom Windows free https://atom.io/
Bluefish Win/Linux free https://sourceforge.net/projects/bluefish/
gedit Linux nativo
Textedit MacOs nativo

Una lista completa di questi editor è disponibile all’URL: https://en.wikipedia.org/wiki/Comparison_of_text_editors

Ambienti IDE

Molti ambienti di sviluppo integrati (IDE) possiedono al loro interno degli editor di testo. Per esempio Arduino:

oppure SqlDeveloper di Oracle:

 

 

 

 

Leave a Reply