Corso di Informatica per Biologia
(docente)
Fabio Aiolli
E-mail: [email protected]
Web: www.math.unipd.it/~aiolli
(docente laboratorio)
Giovanni Da San Martino
E-mail: [email protected]
Dipartimento di Matematica Pura ed Applicata
Torre Archimede, Via Trieste 63
Orario delle lezioni e esercitazioni
•
18 ore di lezioni in aula
– Giorni:
• Oggi, ore 8:30 - 9:15
• + Ogni Mercoledi’, Giovedi’, Venerdi’, ore 8:30 - 9:15
• Martedi’, ore 8:30 – 9:15 (eventuali recuperi)
•
5 sessioni di esercitazioni in laboratorio per un totale di 15 ore:
– presso le aule informatiche A,B,C dell’ ex Dipartimento
di Matematica Pura ed Applicata (Paolotti)
Fabio Aiolli
Giovedi’
19 Ottobre 2006
14:30 – 17:00
Giovedi’
26 Ottobre 2006
14:30 – 17:00
Giovedi’
2 Novembre 2006
14:30 – 17:00
Giovedi’
9 Novembre 2006
15:00 – 17:30
Giovedi’
16 Novembre 2006
14:30 – 17:00
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
2
Frequenza Obbligatoria
Verranno effettuati controlli di
presenza sia in aula (raccolta firme)
che in laboratorio (automatico)
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
3
Risorse per il corso
Colussi, File', Rossi, "Informatica di Base", Edizioni
Libreria Progetto, 2003
Slide e dispense saranno disponibili sul sito web del
corso:
http://www.math.unipd.it/~aiolli/corsi/biologia0607
/biologia0607.html
Il blog del corso: http://aio.blog.kataweb.it/
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
4
BLOG Pagina Iniziale
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
5
BLOG Pagina Categoria
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
6
BLOG Pagina Commenti
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
7
L’esame sarà in laboratorio
Parte Teorica
– Domande libere e a scelta multipla su TUTTI
e SOLI gli argomenti del corso
Parte Pratica
– Progetti in excel e/o costruzione di pagine
web
Il voto dell’esame viene calcolato come
combinazione dei voti delle due prove
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
8
Contenuti del corso
• Struttura di un computer e principi del
sistema operativo
•
Struttura dell’hardware, linguaggio macchina e
assembler
•
Sistemi Operativi Windows e Linux
• Applicativi e Internet
•
Fogli Elettronici e Excel
•
Reti e Internet, Web, HTML, Posta Elettronica
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
9
Iniziamo..
PARTE 1
Introduzione ai Calcolatori
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
10
Informatica: definizione
INFORMATICA = INFORmazione autoMATICA
In inglese si usa invece il termine COMPUTER
SCIENCE (scienza dei calcolatori)
INFORMATICA focalizza l’attività che si prefigge di
studiare la disciplina
COMPUTER SCIENCE focalizza invece lo strumento
utilizzato
Comunque sia, tutto cio’ che e’ relativo a studio,
progettazione, fabbricazione e impiego degli elaboratori
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
11
Calcolatore o Computer
MACCHINA
ELETTRONICA
AUTOMATICA
PROGRAMMABILE per il
TRATTAMENTO DELL’INFORMAZIONE
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
12
Operazioni di un Calcolatore
Le operazioni che un calcolatore e’ in grado di
svolgere possono essere suddivise in
1. Ingresso (input)
2.Uscita (output)
3.Memorizzazione (storage)
4.Recupero (retrieval)
5.Trasmissione (sending)
6.Ricezione (receiving)
7.Elaborazione (processing)
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
13
Limiti di un Calcolatore
• Esistono elaborazioni che x un computer sono
– IMPOSSIBILI da svolgere (funzioni non
calcolabili)
– TROPPO COMPLESSE per essere calcolate in tempi
ragionevoli
(l’informatica teorica si occupa anche di questi
aspetti)
• Intelligenza Limitata nonostante la cosidetta
Intelligenza Artificiale sia un campo in rapido
sviluppo!!
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
14
Informazione e Dati
• Informazione DIVERSA DA conoscenza
– Vitale o banale
– Vera o falsa
• Un dato e’ un informazione codificata in
forma adatta per essere trattata da un
elaboratore
– Dati + Interpretazione = Informazione
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
15
Sistema di Elaborazione
• Sistema, ovvero formato da un insieme
di parti interagenti
• La descrizione corretta delle singole
parti (cosidetti moduli) non e’
sufficiente a caratterizzare un sistema
• L’interazione tra le parti e/o con
l’esterno (cosidetta interfaccia) e’
altrettanto importante!
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
16
Elaboratori e programmi
• Elaboratore Elettronico Digitale
• Elaboratore Elettronico: Rapidissimo e preciso
esecutore di ordini codificati come programmi che
agiscono sui dati
• Digitale: I dati vengono elaborati e memorizzati in
forma discreta (0/1)
• N.B. Dati e programmi vengono memorizzati assieme
senza alcuna distinzione
• Informazione rappresentata come assenza o presenza
di tensione elettrica o come magnetizzazione o non
magnetizzazione di supporti magnetici
(memorizzazione)
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
17
Come e`fatto un computer?
• Assemblaggio di circuiti elettronici elementari
(CHIP)
–
–
–
–
Pochi millimetri quadrati
Basso consumo
Durata pressoche’ infinita
Basso costo
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
18
I pionieri dell’informatica
• Charles Babbage
Teignmouth, 26/12/1791 – Londra, 18/10/1871
– Idea di macchina programmabile
• George Boole
Lincoln, 2/11/1815 – Ballintemple, 8/12/1864
– Teoria della logica matematica
• Alan Turing
Londra, 23/6/1912 - Manchester, 7/6/1954
– Concetto generale di macchina elaboratrice (macchina di
Turing e molto altro)
• John Von Neumann
Budapest, 28/12/1903 - Washington, 8/2/1957
– Progettazione e sviluppo dei primi calcolatori con programma
memorizzato
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
19
Computer Museum
Progetto Manhattan
Pannelli di controllo e operatori
davanti agli enormi calcolatori
presso il Complesso Y-12 a
Oak Ridge, Tenessee
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
20
Computer Museum
• MainFrame Computers (albori)
– Costosissimi
– Occupavano stanze intere
– Condivisi da molti utenti e sfruttati al massimo
• Mini Computers (anni ’60)
–
–
–
–
Costoso
X Aziende, piccoli enti di ricerca, decine di utenti
Dimensioni di un armadio
Sperimentazione (Unix, C, mouse, GUI)
Commodore 64
• Home Computers (inizio anni ’80)
– Costo contenuto
– Utilizzo perlopiù ludico e didattico
– Commodore64 (Vic20), Spectrum Sinclair
• Personal Computer (fine anni ‘80)
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
21
Nuova Generazione
• MainFrame di nuova generazione
– Poco più grandi di un PC
– Multi-processore
– Supportano anche più di 1000 utenti
Super computer
CRAY 2 (1982-89)
• Super computers
– Elevatissima capacità elaborativa (IBM Blu
Gene/L, 32658 processori)
– Destinati ad una singola applicazione
(previsioni meteorologiche, simulazioni, ..)
• Micro-controller
– Completi ma totalmente integrati in un singolo
CHIP
Palmare
• Palmari
– Dimensioni ridottissime
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
22
Personal Computer
1) Monitor
2) Scheda madre
3) CPU (Microprocessore)
4) RAM
5) Scheda di espansione
6) Alimentatore
7) Dispositivi ottici
8) Hard disk drive (HDD)
9) Mouse
10) Tastiera
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
23
Calcolatore nella società moderna
• Calcolatori dedicati e multi-uso
– Cellulari, GPS (dedicati) PC, Palmari, (multi-uso)
• Strumento
– di lavoro e studio
– di comunicazione (Email, chat, video/music downloading, filesharing..)
– di intrattenimento (Internet, giochi, musica, film, etc)
– di calcolo (Real-time computers, Super computers, Multi
Computers, Macchine ‘pensanti’, Domotica e Robotica)
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
24
L’architettura di Von Neumann
CPU
RAM
Memoria
secondaria
I/O
bus
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
25
RAM = Random Access Memory
(memoria ad accesso casuale)
Nella RAM, come in ogni altra componente di un
computer, le informazioni sono sempre
rappresentate digitalmente mediante
sequenze di 0 e di 1.
La RAM quindi memorizza numeri binari:
•
un bit può contenere (0 o 1)
•
un byte è una sequenza di 8 bit
•
una parola (word) è una sequenza di 4 byte
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
26
La RAM puo’
concettualmente essere
vista come una sequenza
di byte..
indirizzi
da cui si leggono, ed in
cui si scrivono, blocchi di
byte consecutivi
byte di indirizzo 0
0
1
2
3
4
5
6
7
8
9
byte di indirizzo 1
byte di indirizzo 2
10011011
Operazioni
del ‘modulo’
RAM
10
11
12
Scrittura
Lettura
Cancellazione
Fabio Aiolli
testo
foto/film
programma
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
27
0
1
2
3
4
5
6
7
8
9
10
11
12
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
28
programma
0
1
2
3
4 istruzione1
5 istruzione2
6 istruzione3
7
8
9
10
11
12
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
29
Unità di misura della RAM
(e della memoria in generale)
1 KiloByte (KB) = 210 byte = 1.024 byte;
circa 1.000 byte
1 MegaByte (MB) = 220 byte = 1.024 KB;
circa 1.000.000 byte
1 GigaByte (GB) = 230 byte = 1.024 MB;
circa 1.000.000.000 byte
1 TeraByte (TB) = 240 byte = 1.024 GB;
circa 1.000.000.000.000 byte
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
30
Proprieta’ della RAM
• RAM ⇒ il tempo di accesso ad ogni byte e'
sempre lo stesso (circa 10-7/10-8 sec), e NON
dipende da quale byte è stato acceduto prima
• è volatile: se "tolgo la spina" l’informazione è
persa (c’è anche la ROM, Read Only Memory, che
invece e' persistente)
• ogni byte della RAM e' individuato da un
indirizzo, che consiste in un numero intero: 0,1,2...
• il byte e' la minima quantità di memoria
accessibile (attraverso il corrispondente indirizzo)
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
31
Programmi e CPU
• La CPU (Central Processing Unit) consiste di
innumerevoli transistor stampati su sottili chip di
silicio
• La CPU e` in grado di eseguire dei programmi, cioe`
delle sequenze di istruzioni elementari (tra un numero
molto limitato di funzioni) che la CPU (con i suoi e
circuiti logici) “implementa”
– Per poter essere eseguiti i programmi devono risiedere nella
RAM, e quindi sono codificati digitalmente
– I programmi possono operare su dei dati che devono pure
risiedere nella RAM
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
32
Schema di una CPU
BUS
PC
IR
UNITA’
DI CONTROLLO
clock
Registri di calcolo
R0
RAM
R1
CPU
Rn
ALU
Cis1
Fabio Aiolli
Cis2
FR
Cisk
RC
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
33
L’unita’ di Controllo della CPU esegue
continuamente il ciclo FDE (Fetch/Decode/Execute)
1. Fetch: preleva dalla RAM la istruzione da eseguire;
•
sappiamo che l’indirizzo in RAM da leggere è memorizzato in PC
(Program Counter);
•
l’istruzione viene memorizzata in IR (Instruction Register);
•
PC viene aggiornato all'indirizzo della successiva istruzione: se
ogni istruzione occupa N byte, PC viene incrementato di N
2. Decode: riconosci l'istruzione (tra quelle possibili) da
eseguire memorizzata nel registro IR: sia isi
3. Execute: la ALU esegue isi utilizzando il circuito Cisi
4. (Riconoscimento/Gestione Interruzioni)
Tempo necessario ~ 10-9 sec (cioè circa un miliardo di cicli al secondo)
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
34
Il Clock
• Il lavoro della CPU e` scandito da un orologio di
sistema detto clock che controlla la velocita` delle
operazioni
• Il clock invia un flusso costante di impulsi digitali
detti cicli, misurati in Hertz (Hz) cioe` cicli al
secondo
• Maggiore e' la velocita` del clock, piu` veloce sara`
l'elaborazione dei dati e l'esecuzione delle istruzioni
dei programmi
• Attualmente, il clock di una CPU di un PC e`
sull'ordine dei GHz (miliardi di cicli al secondo)
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
35
ALU e Registri della CPU
• L'ALU e' l'unita` aritmetico-logica (ALU e' un
acronimo dall'inglese) che esegue le istruzioni e usa i
registri
• I registri servono per memorizzare operandi ed
operatori per i calcoli dell'ALU e lo stato del
processore dopo tali calcoli
– RC: registro di controllo
• Registri particolari
– PC: indirizzo RAM della prossima istruzione
– IR: prossima istruzione da eseguire
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
36
“.. Pacman ha una
velocità che dipende
dal processore...quindi
cambiando
computer va più
velocemente..sarà poi
vero?”
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
37
Memoria Secondaria o di Massa
•dischi fissi (hard disk), floppy disk, nastri magnetici, CD,
DVD, USB memory, etc
• deve
essere permanente (mentre la RAM e`volatile)
• accesso sequenziale, cioe’ il tempo di accesso varia a
seconda dell’accesso precedente (mentre per la RAM il
tempo di accesso e`sempre uguale)
•Per esempio, dipende dalla posizione della testina di
lettura/scrittura prima dell’operazione
• è adatta per leggere/scrivere grandi quantita’ di dati
(maggiore capacita’, minor costo)
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
38
Dispositivi di I/O (Input/Output)
Sono i dispositivi di comunicazione ed interazione tra
utente e computer.
In un moderno PC:
• input: tastiera, mouse, touchpad, microfono,
videocamera, scanner, connessione di rete, etc
• output: video, stampanti, speaker audio, etc
• velocita` diverse e molto minori delle altre componenti di
un computer (sec per l'input, decimi di sec per l'output)
•Parti meccaniche e non elettroniche
•Interfaccia con l’utente che e’ relativamente lento
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
39
L’architettura di Von Neumann
CPU
RAM
Memoria
secondaria
I/O
bus
velocità decrescente (e molto!!)
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
40
Un preventivo
PC
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Desktop DELL Dimension 4600 euro 1.099
Processore Intel Pentium 4 3.00 GHz con cache 1 MB
Chassis mini tower ATX
Chipset Intel 865 G bus 500 MHz
512 MB DDR RAM
Hard Disk 80 GB 7200 rpm
Lettore DVD 16x, Masterizzatore CD-RW 48x24x48x
Monitor LCD 17"
Scheda video AGP 64 MB
Scheda audio PCI 128 Stereo
Scheda di rete 10/100 Mbit/s
Modem 56 Kbit/s
3 slot PCI, 6 slot USB
Tastiera italiana multifunzione
Mouse ottico
Software MS Windows XP, MS Office XP, Norton
Antivirus
Fabio Aiolli
Unita’ di misura
Frequenza
Hz "operazioni" al
secondo, e multipli
Memoria
Byte, e multipli
Velocita` di
Trasmissione
Bit/s, e multipli
Velocita’ rotazione
Rpm (giri al minuto)
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
41
Software
• La CPU è in grado di interpretare ed eseguire
istruzioni elementari espresse nel proprio Linguaggio
Macchina, quali "leggi il dato presente in una locazione
di memoria", "somma due valori", "scrivi questo dato in
una locazione di memoria“ e poco altro! I ‘mattoncini
della LEGO’ ;-)
• Windows, Word ed Excel sono dei software (‘intere
costruzioni della LEGO’)
– Windows e` un sistema operativo
– Word ed Excel sono delle applicazioni (o programmi
applicativi); esistono le versioni per Windows e per Mac
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
42
Macchina Hardware e Macchina Software
Agli albori dell'informatica, si
programmava in binario, cioe`
in linguaggio macchina,
"scrivendo" i programmi
direttamente nella RAM
applicativi
sistema
operativo
macchina
hardware
Adesso ci sono vari
livelli e ogni livello
rappresenta il supporto
alla programmazione
per il livello sovrastante
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
43
Programmi complessi
Istruzioni di
alto livello
Istruzioni
(funzionalita’)
elementari
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
44
"traduce" per l'utente in
linguaggio macchina
macchina
software
utente
Fabio Aiolli
macchina
hardware
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
45
La macchina software:
• facilita l'input/output
• permette la programmazione in linguaggi
ad alto livello, come C++/Java
• rende disponibili programmi applicativi
per compiere operazioni molto complicate
Tutto viene alla fine "eseguito" dalla macchina
hardware!
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
46
Domande sulla Parte I
Vero o falso?
1.
La memoria ROM è sequenziale
2. Il clock della CPU mantiene l’orario corrente
3. È vero che i dischi rigidi degli attuali PC
ruotano alla velocità di 45 giri al minuto?
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
47
Domande sulla Parte I
Risposta Libera
1.
Quali sono i parametri di valutazione delle prestazioni di un
dispositivo di memoria?
2.
Confronto fra memoria principale e memoria secondaria.
3.
È vero che i dischi rigidi degli attuali PC ruotano alla velocità
di 45 giri al minuto?
4.
Che cos'è uno scanner? che trasformazione opera?
5.
È pensabile che un elaboratore funzioni senza mouse? senza
tastiera? senza hard disc? senza processore?
Fabio Aiolli
INFORMATICA x BIOLOGIA
Introduzione ai Calcolatori
48