corso di · –scheda madre (circuito stampato costituito da fili di rame, resistenze, ondensatori,...
TRANSCRIPT
Corso di
Sistemi di Elaborazione delle Informazioni
Dott. Francesco Rossia.a. 2017/2018
SCUOLA DI MEDICINA E CHIRURGIA
Università degli Studi di Napoli Federico II
1
Programma del corso
• Informatica di base A
• Informatica di base B
• Rappresentazione delle informazioni
• Rappresentazione delle informazioni multimediali
• Le reti
• Sistemi Operativi
• Privacy e sicurezza informatica A
• Privacy e sicurezza informatica B
• LAB Protezione dei dati personali
• Le basi di dati A
• Le basi di dati B
• LAB di basi di dati
2
Contatti
Dott. Francesco Rossie-mail: [email protected]
News, orario lezioni, materiale didattico: https://corsosei.wordpress.com
Libro di riferimento: L. Snyder, “Fluency, conoscere e usare l’informatica”, Pearson
SCUOLA DI MEDICINA E CHIRURGIA
Università degli Studi di Napoli Federico II
3
Processore
• E’ la parte del computer in cui avviene l’elaborazione, ed è coinvolto in tutte le attività del sistema– unità di controllo (CU) e unità logico aritmetica (ALU)
• Esegue operazioni elementari
8
Memoria Centrale
• E’ la parte del computer dove si trovano i programmi e i dati usati durante l’elaborazione:
– memorizza le operazioni che devono essere eseguite dal processore
– memorizza i dati intermedi della computazione
• E’ volatile: se non è alimentata, la memoria viene persa!
– quando si spegne o si riavvia il computer, i dati in memoria vengono persi
9
Memoria Centrale
• RAM = Random Access Memory
– si può accedere a qualsiasi elemento in memoria senza dover scorrere tutti gli elementi precedenti
10
BUS
• Serve per collegare processore e memoria:
– scheda madre (circuito stampato costituito da fili di rame, resistenze, condensatori, …)
12
Le periferiche• Diverse periferiche possono essere collegate
ad un computer.
– Si collegano attraverso il bus.
– Possono essere collegate ad un computer, ma non fanno parte di esso.
• Esempio: esistono computersenza tastiera?
– Sì, ad esempio alcuni palmari.
13
Esempi di periferiche
• Periferiche di input:
– Tastiera, mouse, etc...
• Periferiche di output:
– Monitor, stampante, etc...
• Periferiche di input-output:
– Hard disk, scheda di rete, etc...
14
“Ma l’hard disk non è una memoria?!”
• Tecnicamente, non è una parte del computer ma una “periferica di memorizzazione persistente ad alta capacità”
– memoria non volatile!
• Tiene in memoria i programmi e i dati quando non sono utilizzati direttamente
• Il processo di salvataggio permette di copiare i dati (in modo permanente) dalla RAM all’hard disk durante l’esecuzione di un programma
15
L’hardware
• Le componenti viste fino ad ora (processore, memoria, bus, periferiche) sono componenti fisiche:
– vengono chiamate hardware
16
Il software
• Quando un computer è in esecuzione, esegue dei programmi:
– insiemi di istruzioni finalizzate a risolvere un problema
• I programmi sono le componenti software di un sistema
17
Tipologie di software
• Software di sistema permette di gestire il computer:
– ha l’obiettivo di rendere il sistema: semplice da usare, sicuro, efficiente...
– esempio: sistema operativo (Windows, UNIX (Linux), OS X)
• Software applicativo permette agli utenti di svolgere i loro compiti:
– esempi: programmi di scrittura, browser, il programma che stiamo usando per leggere le slides, …
18
“Ho una domanda”
“Ok, ho capito cosa compone un computer, e cosa sono hardware e software, ma c’è una cosa che non ho mai capito:
Come fa a funzionare un computer?
Come fa a decidere cosa deve fare?
Chi glielo ha insegnato?
”19
Seconda Parte:Il processore e le istruzioni
elementari
“Se sono elementari non saranno poi così difficili da capire”
20
Qual è lo scopo di un processore?
• Esegue istruzioni che sono:
– deterministiche possono avere una sola interpretazione
– elementari operazioni algebriche o logiche (come l’AND) o poco di più
• Le istruzioni sono sequenze di 0 e di 1
– sono memorizzate nella memoria 21
Quanto è veloce un processore?
• Quante operazioni esegue il processore in un secondo?
– cioè: qual è la frequenza del processore?
• La frequenza si misura in Hertz
– 1 Hz = 1 volta al secondo
– 1 MHz = 1 000 000 volte al secondo
• Processori moderni raggiungonovelocità superiori a1 GHz = 1000 MHz = 1 000 000 000 Hz
22
Come fa il processore a eseguire le istruzioni?
Il ciclo macchina (o ciclo fetch/execute):
Fetch = prendi qualcosa precedentemente immagazzinato
1.
2.
3.
4.
5.
23
Istruzioni e parti del computer
• I computer sono costituiti da cinque parti:
– memoria, unità di controllo, unità aritmetico/logica (ALU), unità di input e unità di output
24
Dove sono memorizzate le istruzioni?
• Nella memoria, sotto forma di sequenze di bit
• La memoria contiene anche i dati su cui le istruzioni operano, cioè sequenze di bit che possono rappresentare:
– numeri interi, decimali, ecc.
– lettere (a, b, c, ...., A, B, C)
– immagini, audio, filmati, ecc.
25
La memoria centrale
• Insieme ordinato di locazioni:
– ogni locazione contiene 8 bit = 1 byte
– ogni locazione ha un indirizzo (un numero che la distingue dagli altri)
– l’insieme è finito
26
L’utilizzo della memoria
• Con 1 byte si possono memorizzare un numero limitato di informazioni
– (vedremo più avanti quante)
– esempio: un’istruzione occupa 4 byte
10011111 00101000 00000011 01110100
• Come facciamo a rappresentare dati che occupano più di un byte in memoria?
– usiamo locazioni consecutive
– ci riferiamo a loro usando l’indice della prima locazione
28
Come sono fatte le istruzioni?
ADD 4000, 2000, 2080
• cosa fa: addiziona il valore contenuto all’indirizzo 2000 con il valore contenuto all’indirizzo 2080 e mette il risultato all’indirizzo 4000
29
Quale istruzione viene letta?• Il numero della prossima istruzione da eseguire è
memorizzato nel Program Counter
– Il PC viene incrementato automaticamente quando si finisce di interpretare un’istruzione
– …a meno che l’istruzione non sia un salto. Esempio:
inizio con PC=1 ed eseguo la prima istruzione
1. ADD 4000 3000 2000 dopo istruzione PC=2
2. MULT 3000 2000 1000 dopo istruzione PC=3
3. JUMP 10 dopo istruzione PC=10
4. .....
10. ADD 4100 2100 1100
30
• 5° passo del ciclo macchina:
Come viene eseguita un’istruzione?
PC incrementato di 4 byte
= istruzione successiva
36
Quali istruzioni esegue il processore?
• Istruzioni aritmetiche: ADD, MULT, DIV
• Istruzioni logiche: AND, OR
• Shift: spostamento di bit verso destra o sinistra
• Istruzioni di controllo del flusso: salti
• Spostamento di dati tra aree di memoria
• Ricezione di segnali dai dispositivi (periferiche)
37
“Mmm, allora mi sa che non sto capendo”
“C’è qualcosa che non mi convince: ora stai usando delle slides, e se schiacci il tasto giusto, passi alla slide dopo. Quindi deve esistere l’istruzione ‘passa alla slide dopo’!”
38
I programmi
• Non esiste l’istruzione ‘passa alla slide dopo’:
– il processore non “sa” neanche cosa sia una slide!
• Esiste una serie (lunga) di istruzioni elementari il cui effetto è quello di passare alla slide successiva
• La serie di istruzioni fa parte di un programma
– il programma si chiama PowerPoint, nel nostro esempio delle slide
39
Nella prossima lezione
• Come si scrivono i programmi
• Quali principi teorici esistono alla base dei programmi
40
Abbiamo visto
• Cos’è un computer
– Macchina di von Neumann
• Differenza tra hardware e software
– e tra software applicativo e di sistema
• Cos’è un processore e quali istruzioni esegue
• Cos’è la memoria e cosa contiene
42