Sei sulla pagina 1di 4

Terminologia di base

Introduzione
Il contenuto di questa dispensa tratto in parte dal libro Le basi dellinformatica I fondamenti della programmazione di A. Lorenzi e D. Rossi edito da ATLAS. Lobiettivo della dispensa definire alcuni termini di uso comune, in modo che il significato ad essi associato sia chiaro e condiviso da tutti.

Dati e informazioni
I dati sono elementi che scaturiscono dallosservazione del mondo reale e che utilizziamo per esprimere unopinione, per caratterizzare un fenomeno, oppure per risolvere un problema. I dati si presentano in forme diverse: sequenze di caratteri alfabetici (il nome di una persona, il titolo di un libro); numeri (le dimensioni di un oggetto, let di una persona); sequenze di caratteri alfanumerici, cio la combinazione di caratteri alfabetici e numeri (la targa di unautomobile, il codice fiscale); grafici (le curve statistiche, lelettrocardiogramma); immagini (linsegna di un negozio, un cartellone pubblicitario); suoni (la sirena, il campanello); e cos via. Esempio Torino Milano Genova Bologna Firenze Roma Napoli Palermo
Fig.1 Dati riportati in forma tabellare

25 26 28 28 29 25 30 34

In generale, si pu dire che linformazione tutto ci che possiede un significato per luomo e che viene conservato o comunicato in vista di una utilit pratica, immediata o futura. Il dato diviene informazione nel momento in cui noi associamo ad esso la corrispondente interpretazione. Esempio La tabella di figura 1 riporta alcuni dati, ma nulla ci dice sullinterpretazione, cio sul significato che tali dati hanno. Aggiungendo una riga, che spiega il significato di ogni colonna, otteniamo una informazione.

Autore: Cinzia Bocchi Ultimo aggiornamento: 08/08/11

Citt

Temperatura massima Torino 25 Milano 26 Genova 28 Bologna 28 Firenze 29 Roma 25 Napoli 30 Palermo 34
Fig.2 Temperature massime di alcune citt italiane

Se, infine, specifichiamo anche il giorno in cui sono state rilevate le temperature, otteniamo uninformazione completa. Quindi c una distinzione tra dato e informazione: il dato descrive aspetti elementari di entit o fenomeni; linformazione un insieme di dati elaborati e presentati sulla base dellesigenza di utilizzo pratico, da parte delle persone interessate. Il trattamento dei dati per ottenere le informazioni viene indicato con il termine elaborazione. Ogni tipo di elaborazione necessita di dati in ingresso (input) e produce dati in uscita (output).

INPUT

ELABORAZIONE

OUT PUT

Fig.3 Il processo di elaborazione necessita di dati di input e produce dati di output

Dati variabili e costanti


I dati variabili sono dati che variano in funzione di qualche grandezza di riferimento (tempo, spazio, ecc.). Per esempio, la temperatura registrata in una citt una grandezza variabile in funzione del tempo. Altri dati, detti costanti, sono invece invariabili rispetto a qualsiasi grandezza di riferimento considerata. Un tipico esempio di costante il numero pi-greco (), che rappresenta il rapporto tra la circonferenza e il diametro di un cerchio. Un altro esempio rappresentato dalla costante di gravitazione universale g. Anche il numero di giorni di una settimana costante. Esistono poi alcuni dati che sono costanti in senso lato. Per esempio, lanno corrente costante, ma solo dall1 Gennaio al 31 Dicembre. Le aliquote IVA applicate agli importi di una fattura o le percentuali di imposta sui redditi
Autore: Cinzia Bocchi Ultimo aggiornamento: 08/08/11

possono cambiare nel tempo, ma si mantengono costanti per un periodo di durata rilevante allinterno di una classe di problemi dello stesso tipo.

Linguaggio
Il linguaggio consente di esprimere concetti attraverso luso di simboli. Esistono diversi tipi di linguaggi; in particolare si distingue tra linguaggi naturali e linguaggi formali. I linguaggi naturali sono quelli che gli uomini utilizzano per comunicare tra loro. Sono dotati di una notevole ricchezza espressiva e semantica (di significato), ma possono dar luogo ad ambiguit, imprecisioni o difficolt di interpretazione. Per esempio, la parola rosa pu riferirsi sia al colore che al fiore. La corretta interpretazione dipende dal contesto in cui la stiamo usando. I computer non sono uomini e non hanno capacit di interpretazione (nel senso di attribuire il corretto significato ad una parola, in base al contesto). Pertanto, i linguaggi di programmazione, quelli usati dai computer per intenderci, sono meno espressivi ma non presentano ambiguit. Tali linguaggi sono formali. I linguaggi formali sono stati creati artificialmente dalluomo secondo regole ben definite prive di eccezioni e ambiguit e sono dedicati a scopi precisi e circoscritti.

Alfabeto
Ogni linguaggio costruito su un alfabeto. Per introdurre il concetto di alfabeto nella sua accezione pi generale occorre premettere alcuni esempi di linguaggi e di relativi alfabeti, in modo da superare lassociazione mentale che attribuisce alla parola alfabeto il significato di sequenza di 21 lettere dalla A alla Z della lingua italiana. In primo luogo va notato che, anche per i linguaggi naturali, esistono diversi alfabeti: per esempio, quello della lingua inglese composto da 26 lettere. inoltre, per la lingua greca e le lingue slave vengono utilizzati insiemi di caratteri (alfabeto greco e cirillico) notevolmente diversi in numero e forma rispetto ai caratteri latini. Esempi di alfabeti per linguaggi artificiali sono: linsieme {linea, punto} del linguaggio telegrafico; linsieme dei tre colori {rosso, giallo, verde} del linguaggio semaforico; linsieme delle cifre {0,1} utilizzato per la numerazione binaria. Lalfabeto, nella sua accezione generale, quindi un insieme finito e non vuoto di simboli convenzionali.

Lessico
E linsieme delle parole che hanno un certo significato in un dato linguaggio. Per esempio, la parola rosa ha un significato (anzi pi di uno) nella lingua italiana, ma non ha alcun significato nella lingua greca. Analogamente, anche i linguaggi formali dispongono di un lessico. In particolare, i linguaggi di programmazione, definiscono un insieme di parole chiave che costituiscono il lessico. Le parole chiave possono essere utilizzate solo per ben determinati scopi. Per esempio, la parola chiave class del linguaggio Java pu essere impiegata solo per definire una classe; un programmatore non pu usare la stessa parola per definire una variabile.
Autore: Cinzia Bocchi Ultimo aggiornamento: 08/08/11

Sintassi (o Grammatica)
La sintassi linsieme di regole che consentono di scrivere frasi corrette e di senso compiuto, in un dato linguaggio. Per esempio, la frase dormito sono Ieri poco non corretta sintatticamente, perch anche lordine delle parole ha la sua importanza. Inoltre, stato utilizzato il verbo essere al posto del verbo avere. La frase corretta , ovviamente Ieri ho dormito poco. Le regole sintattiche dei linguaggi formali sono ancora pi restrittive di quelle dei linguaggi naturali. Se in italiano corretto dire sia Ieri ho dormito poco che Ho dormito poco, ieri utilizzando in modo appropriato la punteggiatura o lintonazione della voce, un linguaggio formale non permette eccezioni alle regole. Per esempio, in Java, la dichiarazione di una variabile x intera avviene scrivendo int x;. Non sono ammesse eccezioni a questa regola. A questo punto vi domanderete: chi controlla la correttezza sintattica di un programma scritto in un certo linguaggio di programmazione? Esiste un apposito modulo software che si chiama Analizzatore Sintattico (Parser).

Comunicazione
La comunicazione consiste nel dialogo stabilito tra due entit, il mittente e il destinatario (due persone, il programmatore e il computer,), per realizzare un flusso di informazioni. La comunicazione di solito di tipo interattivo e bidirezionale (mittente e destinatario si scambiano i ruoli) ed costituita da domande e risposte. Questo presuppone che mittente e destinatario siano in grado di comprendersi, ossia utilizzino lo stesso linguaggio. Quando le due entit coinvolte nella comunicazione non condividono lo stesso linguaggio, occorre procedere ad una traduzione. In particolare, quando i soggetti della comunicazione sono il programmatore e il computer, la traduzione deve avvenire tra il linguaggio di programmazione usato dal programmatore e il linguaggio binario usato dalla macchina (e viceversa). Chi si occupa di effettuare la traduzione? Un apposito modulo software chiamato, a seconda dei casi, compilatore o interprete. Il compilatore svolge una funzione simile a quella di un traduttore di testi: prende il programma e lo traduce in linguaggio binario, mantenendo per una copia della traduzione. In questo modo il programma non dovr essere tradotto le volte successive. Linterprete ha un ruolo simile a quello dellinterprete umano: la traduzione avviene simultaneamente, senza lasciare traccia per usi futuri. Sia linterprete che il compilatore incorporano la funzione di analizzatore sintattico: se viene rilevato un errore, la traduzione si interrompe e, contemporaneamente, viene inviato al programmatore un messaggio con la descrizione del problema verificatosi.

________________________________________________________________
Quest'opera stata rilasciata con licenza Creative Commons Attribution-ShareAlike 3.0 Unported. Per leggere una copia della licenza visita il sito web http://creativecommons.org/licenses/by-sa/3.0/ o spedisci una lettera a Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA. Autore: Cinzia Bocchi Ultimo aggiornamento: 08/08/11