CHE COS È L INFORMATICA Prof. Enrico Terrone A. S. 2011/12 Definizione L informatica è la scienza che studia il computer sotto tutti i suoi aspetti. In inglese si usa l espressione computer science, mentre in italiano (e in francese) si preferisce la parola informatica, che nasce dalla contrazione di informazione e automatica, per indicare l elaborazione automatica dell informazione, che è appunto l attività effettuata dal computer.
Definizione L informatica è una scienza che non si occupa di oggetti naturali (a differenza di fisica, chimica e biologia) o di oggetti ideali (a differenza della matematica), bensì di oggetti sociali, costruiti dagli uomini secondo un progetto e per degli scopi e quindi dotati di: genesi (attività di costruzione, risposta alla domanda: da chi è stato fatto?) struttura (progetto di costruzione, risposta alla domanda: in che modo è stato fatto? ) funzioni (scopi della costruzione, risposta della domanda: per quale fine è stato fatto?) Definizione In tal senso l informatica assomiglia a discipline come il diritto e l economia. Pertanto l informatica si può considerare come un sistema di regole che devono essere stabilite e seguite perché l uso del computer sia efficace. Per capire come funzionano i computer, occorre capire che cos è un sistema di regole e che cosa significa seguirle. Le regole sono leggi che vengono stabilite all interno di una comunità, e che le persone accettano di seguire per raggiungere determinati obiettivi. L informatica è un sistema di regole per la costruzione, il funzionamento e l uso dei computer.
Definizione A questo scopo svilupperemo in parallelo il discorso sull informatica come sistema di regole che governano la costruzione, il funzionamento e l uso dei computer e la riflessione sulle regole che permettono il funzionamento di una classe scolastica. Soltanto se siamo in grado di seguire le regole sociali possiamo imparare le regole informatiche. Dunque i due momenti sono parte di un unica valutazione. I concetti base dell informatica L hardware è la componente materiale del computer e comprende tutto ciò che nel computer occupa una porzione di spazio e quindi si può vedere e toccare. Il software è invece la componente ideale del computer, e comprende tutte le informazioni che il computer elabora e tutte le istruzioni con cui le elabora; l insieme delle informazioni e delle istruzioni finalizzate a uno scopo ben preciso si chiamano programma.
I concetti base dell informatica Elaborare le informazioni, che è l attività propria del computer, significa ricevere dei dati e produrre dei risultati. I dati ricevuti si chiamano input, i risultati prodotti si chiamano output. Il programma a questo punto si può definire come una sequenza di istruzioni che trasformano l input nell output. Il computer e l essere umano Si può paragonare il computer all essere umano e quindi l informatica (la scienza che studia il computer) alle scienze che studiano l essere umano. L hardware è il corrispettivo del corpo; il software è il corrispettivo della mente; l input è il corrispettivo della percezione (i dati che riceviamo dal mondo); l output è il corrispettivo dell azione (i risultati che produciamo nel mondo).
Il computer e l essere umano Dunque lo studio dell hardware (elettronica, sistemi) si può paragonare allo studio della fisica, della chimica e della biologia, che si occupano di oggetti naturali come atomi, molecole, cellule ecc.. Lo studio del software corrisponde a discipline come la grammatica e la matematica che si occupano di oggetti ideali come il linguaggio, i numeri ecc.. Lo studio dell input (periferiche di ingresso, conversione analogico/digitale) e dell output (periferiche di uscita, conversione digitale/analogico) corrisponde invece alle discipline che studiano gli effetti prodotti dal mondo sull uomo (percezione) e gli effetti prodotti dall uomo sul mondo (azione). Il computer e l essere umano Il paragone fra computer e essere umano è utile per chiarire alcuni concetti, ma va trattato con l opportuna cautela. La differenza fondamentale è che nel computer il software è separabile dall hardware, mentre nell essere umano almeno allo stato attuale delle conoscenze scientifiche la mente non è separabile dal corpo.
Le origini dell informatica L informatica è una scienza giovane perché il suo oggetto, il computer, è un entità giovane : i primi calcolatori elettronici pienamente funzionanti furono costruiti negli Stati Uniti, negli anni 40 del XX secolo. Le origini dell informatica I padri dell informatica moderna sono l inglese Alan Turing (1912-1954) che definì i principi generali del software e il modello astratto dell hardware (macchina di Turing) e l americano di origini ungheresi John Von Neumann (1903-1957), il cui progetto è alla base della costruzione di quello che viene considerato il primo vero computer, l EDVAC (1944 progetto, 1949 costruzione). Benché alcuni storici dell informatica attribuiscano la primogenitura allo Z1 costruito nel 1939 da Konrad Zuse, è l EDVAC che ha dato il via allo sviluppo dell informatica imponendo l architettura di Von Neumann come riferimento imprescindibile per ogni successivo progetto di computer.
Il modello di Von Neumann Memoria centrale Input Output CPU (CU + ALU) Il modello di Von Neumann La memoria centrale è lo spazio fisico in cui vengono immagazzinate le informazioni e le istruzioni che compongono i programmi. La CPU (Central Processing Unit) è il cervello del computer ed è composta da un Unità di Controllo (CU) che governa il funzionamento della macchina e gestisce le relazioni con memoria e CPU e da un Unità di Calcolo (ALU) che esegue operazioni aritmetiche e logiche.
Il modello di Von Neumann Si definiscono periferiche di comunicazione i dispositivi che permettono di svolgere le operazioni di input (tastiera, mouse) e di output (schermo, stampante). Il modem è una periferica di comunicazione che serve a comunicare con un altro computer anziché con l utente Si definiscono periferiche di memorizzazione (o memorie secondarie) i dispositivi (hard-disk, chiavette, CD, DVD) che permettono di sopperire alle dimensioni limitate e alla natura volatile della parte principale (RAM) della memoria centrale. La parte non volatile della memoria centrale si chiama ROM e serve nella fase di accensione del computer (bootstrap). Il modello di Von Neumann La differenza fondamentale fra il computer e i suoi antenati (primo fra tutti la calcolatrice) è che il computer è in grado di ricevere e memorizzare non soltanto semplici informazioni (numeri, testi, immagini, suoni) ma anche istruzioni (azioni da compiere sulle informazioni). Ne consegue che il computer è una macchina programmabile, in grado di eseguire una quantità illimitata di elaborazioni diverse (anziché una quantità limitata come i tasti che corrispondono alle operazioni della calcolatrice). Dunque nel computer le istruzioni sono una categoria speciale di informazioni.
Il modello di Von Neumann L utilizzatore che è in grado di introdurre nella macchina soltanto informazioni normali (affidandosi a elaborazioni predefinite) si chiama utente; L utilizzatore che è in grado di introdurre anche istruzioni (e quindi di dire al computer non solo che cosa fare, ma anche come farlo) si chiama programmatore. Utente e programmatore sono due ruoli diversi è bisogna tenerne conto anche quando ad interpretarli è la stesa persona (come succederà nelle esercitazioni di laboratorio). Lo schema di Tanenbaum L architettura di Von Neumann riguarda soltanto l hardware. Per avere un modello che tenga conto anche del software, usiamo lo schema proposto dall informatico olandese Andrew Tanenbaum. Applicazioni Linguaggio di alto livello Assembly Sistema operativo Linguaggio macchina Hardware
Lo schema di Tanenbaum SISTEMA OPERATIVO - insieme di programmi che gestiscono l hardware rendendolo agevole per gli altri programmi - nozione di file (unità di informazione per il SO) LINGUAGGIO MACCHINA - livello software su istruzioni corrispondenti ai circuiti elettronici e sui simboli 0 e 1 (ogni programma, per essere eseguito dall hardware, deve essere tradotto in linguaggio macchina) HARDWARE (modello di Von Neumann) - basato su circuiti elettronici e su stati elettrici alto/basso corrispondenti ai simboli 0 e 1 Lo schema di Tanenbaum APPLICAZIONI - livello software basato su programmi eseguibili direttamente dall utente LINGUAGGI DI ALTO LIVELLO - livello software basato su simboli alfanumerici e su istruzioni più simili al ragionamento umano, cioè alla grammatica e alla matematica - il compilatore è il programma che traduce un programma di alto livello in linguaggio macchina ASSEMBLY - livello software analogo al linguaggio macchina ma basato su simboli alfanumerici - l assembler è il programma che traduce un programma assembly in linguaggio macchina
Domande possibili Definire l informatica Che cos è una regola e in che senso l informatica è un sistema di regole Definire e distinguere hardware e software Definire e distinguere input e output In che cosa il computer è simile all essere umano e in che cosa se ne distingue Raccontare le origini storiche dell informatica Disegnare e descrivere il modello di Von Neumann Spiegare la differenza fra utente e programmatore Spiegare la differenza fra computer e calcolatrice Spiegare la differenza fra periferiche di comunicazione e di memorizzazione Disegnare e descrivere il modello di Tanenbaum Spiegare la relazione fra il modello di Von Neumann e il modello di Tanenbaum