Sei sulla pagina 1di 68

1 1

Informatica Informatica : : fusione delle parole informazione informazione e automatica automatica

Linformatica la scienza della rappresentazione e Linformatica la scienza della rappresentazione e


dellelaborazione dellinformazione dellelaborazione dellinformazione
Che cos linformatica
Che cos linformatica

1
1
2 2

Linformatica non la scienza dei calcolatori elettronici: il


calcolatore lo strumento che la rende operativa

Lelaboratore elaboratore computer! calcolatore" unapparecchiatura


di#itale di#itale! elettronica elettronica ed automatica automatica capace di effettuare
trasformazioni sui dati:
Che cos linformatica
Che cos linformatica

2
2
$ $

%er
analisi e pro#rammazione
analisi e pro#rammazione

si intende linsieme delle
attivit& preliminari atte a risolvere problemi utilizzando
un elaboratore! dalla formulazione del problema fino
alla predisposizione dellelaboratore

'copo dellanalisi 'copo dellanalisi definire un al#oritmo al#oritmo

'copo della pro#rammazione 'copo della pro#rammazione definire un pro#ramma pro#ramma


(nalisi e pro#rammazione
(nalisi e pro#rammazione

1
1
) )
(nalisi e pro#rammazione
(nalisi e pro#rammazione

2
2

(l#oritmo:
(l#oritmo:

elenco finito di istruzioni! che specificano le
operazioni ese#uendo le *uali si risolve una classe di
problemi

+n particolare problema della classe viene risolto tramite


lapposito al#oritmo sui dati che lo caratterizzano

+n al#oritmo non pu, essere ese#uito direttamente +n al#oritmo non pu, essere ese#uito direttamente
dallelaboratore dallelaboratore

%ro#ramma:
%ro#ramma:

ricetta che traduce lal#oritmo ed
direttamente comprensibile! pertanto ese#uibile! da
parte di un elaboratore

Lin#ua##io di pro#rammazione:
Lin#ua##io di pro#rammazione:

lin#ua##io ri#oroso che
permette la formalizzazione di un al#oritmo in un
pro#ramma
- -
.isultati .isultati
%roblema %roblema
(/(LI'I (/(LI'I
0L(12.(3I2/0 0L(12.(3I2/0 4ati 4ati
%.25.(66(3I2/0 %.25.(66(3I2/0
(l#oritmo (l#oritmo
%ro#ramma %ro#ramma
Le fasi del procedimento di
Le fasi del procedimento di
analisi e pro#rammazione
analisi e pro#rammazione
7 7
5li al#oritmi
5li al#oritmi
8 8
(nno accademico 2919:2911 (nno accademico 2919:2911
8 8

(l#oritmo (l#oritmo deriva dal nome del matematico uzbeco 6ohammed 6ohammed
ibn ibn 6usa (l 6usa (l ;hu<arizmi ;hu<arizmi! vissuto nel I= secolo d>C> dalla cui
opera nata lal#ebra moderna"! e si#nifica procedimento di procedimento di
calcolo calcolo
4efinizione di al#oritmo
4efinizione di al#oritmo
Una procedura per risolvere matematicamente un
problema in un numero finito di passi, che spesso
+na procedura per risolvere matematicamente un problema
+na procedura per risolvere matematicamente un problema
In un numero finito di passi! che spesso comprende ripetizioni
In un numero finito di passi! che spesso comprende ripetizioni
4i una operazione>
4i una operazione>
In #enerale un metodo passo:passo per ese#uire un dato
In #enerale un metodo passo:passo per ese#uire un dato
compito
compito
? ?
(nno accademico 2919:2911 (nno accademico 2919:2911
Cominciamo con l@analisi della struttura di un
Cominciamo con l@analisi della struttura di un
calcolatore>>>
calcolatore>>>
(nno accademico 2919:2911 (nno accademico 2919:2911
A A

Il so#no di costruire macchine capaci di effettuare


calcoli automatici affonda le radici nel pensiero
filosofico del B799:

Cilhelm 'chicDard introdusse la prima macchina


moltiplicatrice dotata di accumulatori cilindrici
Cenni storici
Cenni storici

1
1
La presenza invasiva dellinformatica nella vita di tutti i #iorni
un fenomeno relativamente recenteE non recente invece la
necessit& di avere a disposizione strumenti e metodi per contare
rapidamente! elaborare dati! calcolare
Le prime testimonianze di strumenti per contare risal#ono a $9>999
anni fa
I primi esempi di al#oritmi procedure di calcolo automatico
sono stati scoperti in 6esopotamia su tavolette babilonesi risalenti al
1?991799 a>C>
6acchina moltiplicatrice 172)" 6acchina moltiplicatrice 172)"
Cilhelm 'chicDard 1-A2:17$-" Cilhelm 'chicDard 1-A2:17$-"
(nno accademico 2919:2911 (nno accademico 2919:2911
19 19

%ascal e Leibnitz non solo affrontarono il problema! #i& studiato


da Cartesio! di automatizzare il ra#ionamento lo#icomatematico!
ma si cimentarono anche nella realizzazione di semplici macchine
per calcolare capaci di effettuare somme e sottrazioni"
Cenni storici
Cenni storici

2
2
5ottfried Leibnitz 17)7:1817" 5ottfried Leibnitz 17)7:1817" 1laise %ascal 172$:1772" 1laise %ascal 172$:1772"
6acchina computazionale 5> Leibnitz" 6acchina computazionale 5> Leibnitz"
6acchina addizionatrice 6acchina addizionatrice la %ascalina 1> %ascal" la %ascalina 1> %ascal"
(nno accademico 2919:2911 (nno accademico 2919:2911
11 11

La macchina alle differenze macchina alle differenze! concepita da


1abba#e nel 1?$$! rappresenta il primo
esempio di macchina pro#rammabile di
utilit& #enerale

In se#uito! lo stesso 1abba#e pro#etta la


macchina analitica macchina analitica mai realizzata! troppo
complessa e critica la sua costruzione per le
tecnolo#ie meccaniche dellepoca"

La prima pro#rammatrice nella storia


dellinformatica (da (u#usta 1Fron!
contessa di Lovelace
Cenni storici
Cenni storici

$
$
Charles 1abba#e 18A1:1?81" Charles 1abba#e 18A1:1?81"
6acchina alle differenze: modello 6acchina alle differenze: modello
ricostruito presso il 6useo della 'cienza ricostruito presso il 6useo della 'cienza
di Londra se#uendo il pro#etto del 1?)A di Londra se#uendo il pro#etto del 1?)A
(nno accademico 2919:2911 (nno accademico 2919:2911
12 12

Gu Herman Hollerith! nel 1?A9! a sviluppare


la macchina a schede perforate macchina a schede perforate! per
compiere le statistiche del censimento
decennale de#li 'tati +niti

I dati venivano immessi su schede di


cartone opportunamente perforate! le stesse
schede che sono state usate fino a due
decenni or sono

Le schede venivano successivamente


contate da una sorta di panto#rafo che
permetteva diversi tipi di elaborazioni totali!
medie! statistiche! etc>"

'i impie#arono due anni e mezzo ad


analizzare i dati contro i sette anni del
censimento del 1??9"! nonostante
lincremento di popolazione da -9 a 7$
milioni
Cenni storici
Cenni storici

)
)
Herman Hollerith 1?79:1A2A" Herman Hollerith 1?79:1A2A"
Census Iabulator 1?A9" Census Iabulator 1?A9"
(nno accademico 2919:2911 (nno accademico 2919:2911
1$ 1$
'uccessivamente la macchina a schede
perforate venne utilizzata con successo
per i censimenti in (ustria! /orve#ia e
.ussia! tanto che Hollerith decise di
fondare una societ&: la Computin# Computin#
Iabulatin# .ecordin# CompanF Iabulatin# .ecordin# CompanF che! nel
1A2$! divenne lInternational 1usiness International 1usiness
6achine 6achine! o I16 I16
/el 1A$2! il tedesco ;onrad 3use realizza
una macchina elettromeccanica in #rado
di ese#uire calcoli con controllo
pro#rammato! ed introduce il sistema di
numerazione binario la cui al#ebra era
stata definita da Leibnitz e da 1oole"
Cenni storici
Cenni storici

-
-
;onrad 3use 1A19:1AA-" ;onrad 3use 1A19:1AA-"
Il calcolatore 31 1A$A" Il calcolatore 31 1A$A"
(nno accademico 2919:2911 (nno accademico 2919:2911
1) 1)
4urante la seconda #uerra mondiale! fioriscono i pro#etti di
elaboratori da utilizzarsi per scopi bellici
La macchina 0ni#ma La macchina 0ni#ma
Cenni storici
Cenni storici

7
7
(lan Iurin# 1A12:1A-)" (lan Iurin# 1A12:1A-)"

0ni#ma 0ni#ma! realizzata dai tedeschi (>


'cherbius" per codificare le comunicazioni
militari

.ed %urple .ed %urple! di costruzione #iapponese

Computer Colossus Computer Colossus! costruito da#li in#lesi


per la decifrazione dei messa##i tedeschi!
alla cui pro#ettazione e realizzazione
collabor, (lan Iurin# (lan Iurin#! permise la vittoria
an#loamericana sull(tlantico
(nno accademico 2919:2911 (nno accademico 2919:2911
1- 1-
Con linvenzione del tubo a vuoto tubo a vuoto 1A9)"! del transistor transistor 1A)8" e!
infine! dei circuiti inte#rati circuiti inte#rati 1A7A"! levoluzione dei computer
divenne inarrestabile
Ginora la potenza di calcolo de#li elaboratori si decuplicata o#ni
-7 anni Jma non pu, durare! almeno con le tecnolo#ie in uso"
Cenni storici
Cenni storici

8
8
(nno accademico 2919:2911 (nno accademico 2919:2911
17 17
La costruzione dei primi calcolatori risale allinizio de#li anni B)9!
#razie alla tecnolo#ia elettronicaE i primi esemplari venivano
pro#rammati mediante connessioni elettriche e commutatori
0/I(C 0/I(C! 6arD I 6arD I"
Il nome di Kon /eumann le#ato invece ai primi calcolatori a
pro#ramma memorizzato realizzati alla fine de#li anni B)9 04'(C 04'(C!
Chirl<ind Chirl<ind! I(' I('! +/IK(C +/IK(C"
%er la prima volta! vi#e il principio di unitariet& di rappresentazione di unitariet& di rappresentazione di
dati e istruzioni dati e istruzioni! che ven#ono codificati! allinterno dellelaboratore! in
maniera indistin#uibile
La diffusione dei calcolatori a livello mondiale avvenuta nei
decenni B79 e B89
Cenni storici
Cenni storici

?
?
Lohn Kon /eumann 1A9$:1A-8" Lohn Kon /eumann 1A9$:1A-8"
(nno accademico 2919:2911 (nno accademico 2919:2911
18 18
04'(C 1A)A" 04'(C 1A)A" 0/I(C 1A)7" 0/I(C 1A)7" 6arD I 1A)?" 6arD I 1A)?"
+/IK(C 1A-2" +/IK(C 1A-2" Chirl<ind 1A)A" Chirl<ind 1A)A" I(' 1A-2" I(' 1A-2"
Cenni storici
Cenni storici

A
A
(nno accademico 2919:2911 (nno accademico 2919:2911
1? 1?

Iuttavia! lesplosione dellinformatica come fenomeno di massa


datata 1A?1! anno in cui lI16 introdusse un tipo particolare di
elaboratore: il %ersonal Computer %ersonal Computer %C"

La particolarit& dei %C consisteva nellessere assemblati con


componenti facilmente reperibili sul mercato e *uindi a basso
costo"

%ossibilit& per *ualsiasi casa produttrice di costruire cloni

(ttualmente i %C! o me#lio il loro componente fondamentale il


microprocessore microprocessore utilizzato in tutti i settori applicativi non
solo per elaborare dati":

Ielefoni cellulari! ricevitori satellitari di#itali! 5%'

1ancomat e carte di credito

Lavatrici e forni a microonde

Computer di bordo e (1'

>>>
Cenni storici
Cenni storici

19
19
1A 1A
(nno accademico 2919:2911 (nno accademico 2919:2911
1A 1A
%enso che ci sia mercato nel mondo per non piM di cin*ue computer> Ihomas Catson!
%residente di I16! 1A)$"
Ho #irato in lun#o e in lar#o *uesto paese e ho parlato con le mi#liori menti e posso
assicurarvi che *uesta moda dellelaborazione automatica un capriccio che non vedr& la
fine dellanno> 0ditor di libri scientifici di %rentice Hall! 1A)8"
+na unit& di calcolo sull0/I(C dotata di 1?>999 tubi elettronici a vuoto e pesa $9
tonnellate! ma possibile che in futuro i computer abbiano soltanto 1999 tubi e pesino
soltanto una tonnellata e mezzo> %opular 6echanics! 1A)A"
(bbiamo un computer *ui a Cambrid#e! ce n uno a 6anchester e uno al laboratorio
nazionale di fisica> Imma#ino che sarebbe #iusto averne uno anche in 'cozia! ma non di
piM> 4ou#las Hartree! fisico in#lese! 1A-1"
6a>>> a che serveN +n in#e#nere della (dvanced Computin# 'Fstems! 4ivisione dellI16!
commentando il microchip! 1A7-">
/el 1A87! il /e< OorD Iimes /e< OorD Iimes pubblic, un libro dal titolo La scienza nel ventesimo secolo La scienza nel ventesimo secolo!
nel *uale il calcolatore veniva menzionato una sola volta e indirettamente! in relazione al
calcolo delle orbite dei pianeti
/on c ra#ione perchP *ualcuno possa volere un computer a casa sua> ;en 2lson!
fondatore di 4i#ital! 1A88"
7)9 ;bFtes should be enou#h for anFbodF> 1ill 5ates! 1A?1"
Grasi celebri ed altroJ
Grasi celebri ed altroJ
29 29
(nno accademico 2919:2911 (nno accademico 2919:2911
29 29

La capacit& dellelaboratore di ese#uire successioni di


operazioni in modo automatico determinata dalla presenza
di un dispositivo di memoria memoria

/ella memoria sono re#istrati i dati dati e>>>

>>>le operazioni da ese#uire su di essi nellordine secondo cui


devono essere ese#uite": il pro#ramma pro#ramma! la ricetta usata
dallelaboratore per svol#ere il proprio compito

Il pro#ramma viene interpretato dallunit& di controllo unit& di controllo


6odello di Kon /eumann
6odello di Kon /eumann

Larchitettura di Kon /eumann
Larchitettura di Kon /eumann
21 21
(nno accademico 2919:2911 (nno accademico 2919:2911
21 21

%ro#ramma: %ro#ramma: se*uenza di operazioni atte a predisporre


lelaboratore alla soluzione di una determinata classe di
problemi

Il pro#ramma la descrizione di un al#oritmo al#oritmo in una forma


comprensibile allelaboratore

Lelaboratore una macchina universale macchina universale: cambiando il


pro#ramma residente in memoria! in #rado di risolvere
problemi di natura diversa una classe di problemi per o#ni
pro#ramma"
La macchina universale
La macchina universale
22 22
(nno accademico 2919:2911 (nno accademico 2919:2911
22 22

'i possono considerare diversi livelli di astrazione:

Circuiti elettronici hard<are"

(rchitettura e lin#ua##io macchina

'istema operativo soft<are di sistema"

Lin#ua##i di pro#rammazione

%ro#rammi applicativi
Il calcolatore basato su circuiti
elettronici di#itali! ovvero modellabili con
lal#ebra di 1ooleE i circuiti elettronici
implementano le funzioni lo#iche (/4!
2.! /2I! permettono di memorizzare il
valore di variabili booleane! di effettuare
calcoli! etc>
'ilicon 5raphics 'ilicon 5raphics
La struttura del calcolatore
La struttura del calcolatore
2$ 2$
(nno accademico 2919:2911 (nno accademico 2919:2911
2$ 2$

Iutti i calcolatori attuali si rifanno allarchitettura di Kon /eumann!


costituita dalle *uattro componenti:

C%+ Central %rocessin# +nit" C%+ Central %rocessin# +nit"

6emoria centrale 6emoria centrale

1us di sistema 1us di sistema

%eriferiche %eriferiche

BUS di sistema BUS di sistema
C%+ C%+
tastiera tastiera
mouse mouse
memoria di memoria di
massa massa
monitor monitor
6emoria 6emoria
centrale centrale
%eriferiche %eriferiche
La macchina di Kon /eumann
La macchina di Kon /eumann

1
1
2) 2)
(nno accademico 2919:2911 (nno accademico 2919:2911
L'architettura di Von Neumann

CPU
Memoria
centrale
Memoria
secondaria
I/O
BUS
La macchina di Kon /eumann
La macchina di Kon /eumann
2- 2-
(nno accademico 2919:2911 (nno accademico 2919:2911
2- 2-

Larchitettura piM consolidata per il calcolatore prevede *uindi


unit& funzionali fra loro colle#ate attraverso un unico canale di
comunicazione! il bus bus

Il bus fisicamente realizzato mediante un insieme di connettori


elettrici
6emoria
principale
C%+ IQ2 IQ2 IQ2
1+'
Indirizzi
4ati
Controllo
4ispositivi di InputQ2utput
(rchitettura a 1+'
(rchitettura a 1+'
27 27
(nno accademico 2919:2911 (nno accademico 2919:2911
L'architettura di Von Neumann

CPU RAM
Memoria
secondaria
I/O
BUS
28 28
(nno accademico 2919:2911 (nno accademico 2919:2911
28 28
l
orolo#io del sistema
orolo#io del sistema

che fornisce al computer un
battito re#olare

La C%+ lavora a / 5Hz: se#ue un ritmo di / miliardi di


impulsi al secondo es>! una C%+ con un clocD a $ 5Hz
temporizzata da tre miliardi di impulsi al secondo"
Intel %entium Intel %entium
La
Central %rocessin# +nit
Central %rocessin# +nit

lunit&
centrale di elaborazione: ese#ue le
istruzioni dei pro#rammi e ne
re#ola il flusso! ese#ue i calcoli
La C%+ un dispositivo
sincrono
sincrono!
cio pu, cambiare stato solo
*uando riceve un impulso di
clocD
clocD!
La C%+
La C%+

1
1
2? 2?
(nno accademico 2919:2911 (nno accademico 2919:2911
2? 2?
La fre*uenza di clocD determina la velocit& di
elaborazione del computer: piM alta la fre*uenza di
clocD! ma##iore la velocit& di elaborazione
La velocit& e la potenza di un computer dipendono
per, anche dalla lar#hezza del bus! ovvero dal numero
di bit ampiezza del sin#olo dato" che il processore
in #rado di ricevere e di elaborare simultaneamente

(ttualmente! i processori sono in #rado di elaborare dati


rappresentati con 7) bit
La C%+
La C%+

2
2
2A 2A
(nno accademico 2919:2911 (nno accademico 2919:2911
2A 2A

La C%+ costituita da tre elementi fondamentali:

+nit& (ritmetico +nit& (ritmetico Lo#ica (L+" Lo#ica (L+"

.e#istri .e#istri

+nit& di Controllo C+" +nit& di Controllo C+"


0+
0Recution +nit

(L+ (L+
C+ C+
%C %C
I. I.
re#istri re#istri
Contatore di pro#ramma
%ro#ram Counter %ro#ram Counter" S%T
.e#istro Istruzione
Instruction .e#ister Instruction .e#ister" SI%T
1+' 1+'
1I+
1us Interface
+nit
La C%+
La C%+

$
$
$9 $9
(nno accademico 2919:2911 (nno accademico 2919:2911
$9 $9

( livello macroscopico! ad o#ni impulso di clocD! la C%+:

le##e il suo stato interno determinato dal contenuto dei


re#istri di stato" e la se*uenza di in#resso determinata dal
contenuto dei re#istri istruzione e dati"

produce un nuovo stato dipendente dallo stato in cui si


trovava ori#inariamente

In pratica! la C%+ realizza una complessa funzione lo#ica!


con decine di in#ressi e di uscite
la corrispondente tabella di verit& avrebbe un numero
enorme di ri#he miliardi di miliardi"
La C%+
La C%+

)
)
$1 $1
(nno accademico 2919:2911 (nno accademico 2919:2911
$1 $1

Lo stato della C%+ costituito da informazioni


memorizzate ne#li opportuni re#istri" su:

dati da elaborare contenuti nei re#istri dati re#istri dati"

istruzione da ese#uire nel re#istro istruzioni re#istro istruzioni"

indirizzo in memoria della prossima istruzione da ese#uire


nel pro#ram counter pro#ram counter"

eventuali anomalie o eventi verificatisi durante


lelaborazione nei re#istri fla# re#istri fla#"
La C%+
La C%+

-
-
$2 $2
(nno accademico 2919:2911 (nno accademico 2919:2911
$2 $2

'et di istruzioni di base:

somma da cui sottrazione"

scorrimento shift"

operazioni lo#iche

operazioni di accesso alla memoria

trasferimento di un dato da una locazione di memoria ad unaltra

trasferimento da memoria a un re#istro della C%+

trasferimento da un re#istro della C%+ a memoria

operazioni di confronto

Le operazioni eccetto *uelle di accesso alla memoria" sono


ese#uite allinterno della (L+ e coordinate dallunit& di controllo

!da cui moltiplicazione e divisione"


La C%+
La C%+

7
7
$$ $$
(nno accademico 2919:2911 (nno accademico 2919:2911
$$ $$

Il tipo di operazione selezionata! in un dato istante! dipende dallo


stato di alcune linee di controllo provenienti dalla C+

Le operazioni lo#iche es> (/4" ven#ono ese#uite bit a bit fra i due
operandi

0siste una unit& specializzata per le operazioni in vir#ola mobile G%+ G%+"
L(L+ (L+ (rithmetic (rithmetic Lo#ic +nit Lo#ic +nit" un circuito
in #rado di ese#uire operazioni aritmetiche
e lo#iche su 2 operandi! rappresentati su n
bit es> $2Q7) bit"E oltre al risultato
delloperazione pu, produrre informazioni
ulteriori su linee specifiche il risultato
zero! si verificato un overflo<! etc>"
L+nit& (ritmetico
L+nit& (ritmetico

Lo#ica
Lo#ica
ALU Result
Zero
Overflow
a
b
ALU operation
CarryOut
$) $)
(nno accademico 2919:2911 (nno accademico 2919:2911
$) $)

I re#istri sono dispositivi di memorizzazione che consentono un


accesso molto veloce ai dati che conten#onoE hanno dimensioni
prefissate es> $2Q7) bit"

(lcuni re#istri hanno funzioni specifiche es> contatore di


pro#ramma"

/ella ma##ior parte delle architetture! le operazioni della (L+ si


possono effettuare solo fra dati presenti nei re#istri ed anche il
risultato viene momentaneamente memorizzato in un re#istro
EIP Instruction pointer (PC)
EFLA! Con"ition co"es
Co"e se#$ent pointer C!
!tac% se#$ent pointer (top of stac%) !!
&ata se#$ent pointer ' &!
&ata se#$ent pointer ( E!
&ata se#$ent pointer ) F!
&ata se#$ent pointer * !
' *(
PR ' EA+
PR * E,+
PR ( EC+
PR ) E&+
PR - E!I
PR . E&I
PR / E,P
PR 0 E!P
1a$e Use
.e#istri del %entium .e#istri del %entium
I re#istri
I re#istri
$- $-
(nno accademico 2919:2911 (nno accademico 2919:2911
$- $-

0se#ue le istruzioni prelevandole dalla memoria nella fase di access access

La prossima istruzione da ese#uire individuata dallindirizzo presente nel


re#istro contatore di pro#ramma re#istro contatore di pro#ramma %C"

Listruzione in esecuzione memorizzata nel re#istro istruzione re#istro istruzione I."

Listruzione un codice binario che deve essere decodificato decodificato dalla C+E
specifica il tipo di operazione! #li eventuali operandi! etc>

/ormalmente le istruzioni sono ese#uite in se*uenza: dopo l@access! il %C %C


viene incrementato viene incrementato! per fare riferimento allistruzione successiva
C+
I.
%
C
memoria
1+'
Istruzione 1
Istruzione 2
Istruzione $
92(488G2
92(488G2
'e#nali di controllo
(L+! .e#istri! etc>"
Lunit& di controllo
Lunit& di controllo
$7 $7
(nno accademico 2919:2911 (nno accademico 2919:2911
$7 $7

Il processore ese#ue le istruzioni di un pro#ramma


una
una
alla volta
alla volta in se*uenza: estrae le istruzioni dalla memoria!
le interpreta e le ese#ue una dopo laltra

+n pro#ramma indica la se*uenza di istruzioni da ese#uire


per ottenere la soluzione ad un data classe di problemi

Il processore ese#ue o#ni istruzione mediante una


se*uenza ben definita di operazioni detta
ciclo di
ciclo di
istruzione
istruzione o
ciclo macchina
ciclo macchina

0strazione di una istruzione: fase di access fase di access


4ecodifica di una istruzione: fase di decode fase di decode

0secuzione dellistruzione: fase di eRecute fase di eRecute


Come si ese#uono i pro#rammi
Come si ese#uono i pro#rammi

1
1
$8 $8
(nno accademico 2919:2911 (nno accademico 2919:2911
A"U RAM
BUS
c
A"U A"U
SCHEMA DELLA CPU
2222
CI
1
CI
2
CI
D
R#
Rn
RC
2222
IR
PC
$? $?
(nno accademico 2919:2911 (nno accademico 2919:2911
Ciclo ADE della CPU
Ciclo ADE della CPU
(10-
(10-
9 9
sec)
sec)
$
Reperimento
Reperimento
dellistruzione
dellistruzione
access
access
":
":
%
lettura della cella di .(6 il cui indirizzo e
contenuto nel contatore di pro#ramma
%
caricamento del registro istruzione con
listruzione
%
Incremento del contatore pro#ramma
$
Decodifica Decodifica "ell3istru4ione "ell3istru4ione (decode): (decode):
%
Troa !"i o#erandi a secon"a "el co"ice operativo
%
Modifica contatore pro#ra$$a se istru4ione "i salto
$
E$ecu%ione
E$ecu%ione
"ell3istru4ione
"ell3istru4ione
(e&ecute):
(e&ecute):
%
Attia i circuiti necessari
$A $A
(nno accademico 2919:2911 (nno accademico 2919:2911
A"U RAM
BUS
c
A"U A"U
ACCESS
2222
CI
1
CI
2
CI
D
R#
Rn
RC
2222
IR
PC
In IR viene $essa l3istru4ione
"a ese#uire (contenuta nella
RA5 all3in"iri44o specificato
all3inteno "el re#istro PC)
In PC viene $esso l3in"iri44o
"ella RA5 "ove 6 contenuta
la
prossi$a istru4ione "a
ese#uire2
)9 )9
(nno accademico 2919:2911 (nno accademico 2919:2911
A"U RAM
BUS
c
A"U A"U
DEC'DE
2222
CI
1
CI
2
CI
D
R#
Rn
RC
2222
IR
PC
La ALU riconosce
l3istru4ione co$e una
"elle istru4ioni
$acc7ina I(8 2228 I%
possibili
)1 )1
(nno accademico 2919:2911 (nno accademico 2919:2911
A"U RAM
BUS
c
A"U A"U
E(ECUTE
2222
CI
1
CI
2
CI
D
R#
Rn
RC
2222
IR
PC
La ALU attiva la
corrispon"ente
co$ponente (a"
ese$pio
CI) c7e ese#ue
l3istru4ione ric7iesta)
)2 )2
(nno accademico 2919:2911 (nno accademico 2919:2911
Esempio di esecuzione di istruzioni
Esempio di esecuzione di istruzioni
1> 1>
Carica
Carica
nel re#istro .$ il contenuto della cella di
nel re#istro .$ il contenuto della cella di
memoria 19
memoria 19
2> 2>
Carica
Carica
nel re#istro .) il contenuto della cella di
nel re#istro .) il contenuto della cella di
memoria 11
memoria 11
! !
"omma di interi
"omma di interi
sul contenuto dei re#istri .$ e .)!
sul contenuto dei re#istri .$ e .)!
risultato nel re#istro .9
risultato nel re#istro .9
)> )>
Irasferisci
Irasferisci
il contenuto del re#istro .9 nella cella 12
il contenuto del re#istro .9 nella cella 12
-> ->
'I2%
'I2%
)$ )$
(nno accademico 2919:2911 (nno accademico 2919:2911
L'architettura di Von Neumann

CPU RAM
Memoria
secondaria
I/O
BUS
)) ))
(nno accademico 2919:2911 (nno accademico 2919:2911
)) ))

Le memorie sono dispositivi per lo stocca##io delle


informazioni

2#ni memoria costituita da celle! a cui si accede


tramite un indirizzo

In o#ni elaboratore vi sono tre tipi di memorie:

.e#istri: .e#istri: conten#ono informazioni necessarie alla


elaborazione della sin#ola istruzione

6emoria centrale: 6emoria centrale: contiene dati e istruzioni attualmente


elaborati dal processore

6emorie di massa: 6emorie di massa: conten#ono dati e pro#rammi che


non sono o##etto di elaborazione immediata
Le memorie
Le memorie

1
1
)- )-
(nno accademico 2919:2911 (nno accademico 2919:2911
)- )-

I parametri fondamentali che definiscono una memoria sono:

4imensione della parola 4imensione della parola locazione di memoria"

6odalit& di accesso 6odalit& di accesso diretto o se*uenziale"

%ermanenza o volatilit& dei dati %ermanenza o volatilit& dei dati

Capacit& Capacit& numero di locazioni disponibili"! espressa in ;1! 61! 51!


etc>

Iempo di accesso Iempo di accesso! necessario per accedere ad una locazione di


memoria per unoperazione di lettura o scrittura! espresso in
nanosec! millisec! sec

In base a#li ultimi due parametri! le memorie si collocano a


diversi livelli di una #erarchia! che va da memorie piM capaci ma
piM lente memorie di massa" a memorie piccole e veloci
re#istri"
Le memorie
Le memorie

2
2
(nno accademico 2919:2911 (nno accademico 2919:2911
5erarchia di memorie
5erarchia di memorie
IbFte
5bFte
)8 )8
(nno accademico 2919:2911 (nno accademico 2919:2911

La memoria centrale o memoria principale! detta anche


.(6
.(6
.andom (ccess 6emorF
.andom (ccess 6emorF! ovvero memoria ad
accesso casuale! perchP *ualsiasi cella pu, essere
lettaQscritta in un tempo! mediamente! costante"! la
memoria in linea con il processore! che contiene i dati
e i pro#rammi che sono attualmente utilizzatiQin
esecuzione

+n pro#ramma! *uando non o##etto di elaborazione!


memorizzato su memoria di massa dischi"

Uuando deve essere ese#uito! viene caricato tutto o in


parte! in memoria centrale memoria virtuale"
La memoria centrale
La memoria centrale

1
1
)? )?
(nno accademico 2919:2911 (nno accademico 2919:2911
)? )?

Le caratteristiche fondamentali della memoria centrale


sono:

accesso diretto alle informazioni accesso diretto alle informazioni

velocit& elevata velocit& elevata

volatilit& volatilit&: *uando il computer viene spento! i dati e i


pro#rammi presenti in memoria ven#ono cancellati

La tecnolo#ia utilizzata per la memoria centrale


*uella dei dispositivi a semiconduttori! che la fanno
apparire come una matrice di bit

2#ni bit presente come stato alto o basso" di tensione


e viene rappresentato con le cifre binarie 9Q1
La memoria centrale
La memoria centrale

2
2
)A )A
(nno accademico 2919:2911 (nno accademico 2919:2911
)A )A

La memoria principale un insieme di locazioni o celle

Lunit& di memorizzazione! la dimensione della sin#ola


cella! il bFte se*uenza di ? bit"

Ciascun bFte nella memoria individuato da un


indirizzo
indirizzo

che lo distin#ue da tutti #li altri! costituito da
un numero variabile da 9 a 2
/
1! dove / la
dimensione in bit dellindirizzo es> numero di bitQfili sul
bus indirizzi"
La memoria centrale
La memoria centrale

$
$
-9 -9
(nno accademico 2919:2911 (nno accademico 2919:2911
Unit# di misura della RA$
Unit# di misura della RA$
(e della memoria in generale)
(e della memoria in generale)
1 %ilo&'te ;1" V (
10
)'te V 1>92)
bFteE circa 1>999 bFte
1 $ega&'te 61" V (
(0
)'te V 1>92)
;1E circa 1>999>999 bFte
1 *iga&'te 51" V (
0
)'te V 1>92)
61E circa 1>999>999>999 bFte
1 +era&'te I1" V (
,0
)'te V 1>92)
51E circa 1>999>999>999>999 bFte
-1 -1
(nno accademico 2919:2911 (nno accademico 2919:2911
)ndiri%%i di memoria
In"iri44o ,yte
In"2 parola In"2 "eci$ale In"iri44o binario
' ' '''''' ''
' ( '''''' '(
' ) '''''' ('
' * '''''' ((
( 0 '''''( ''
( / '''''( '(
( - '''''( ('
( . '''''( ((
) 9 ''''(' ''
) : ''''(' '(
) (' ''''(' ('
) (( ''''(' ((
v
-2 -2
(nno accademico 2919:2911 (nno accademico 2919:2911
-2 -2

La connessione tra memoria e processore rappresenta un


limite de#li elaboratori di Kon /eumann

Limite architetturale: il bus permette laccesso ad una sola


informazione per volta collo di botti#lia"

Limite tecnolo#ico: la velocit& con cui il processore ottiene le


informazioni dalla memoria centrale velocit& di accesso della
.(6" inferiore alla velocit& con cui in #rado di elaborarle

'oluzioni 'oluzioni

(llar#amento del bus dati! in modo da poter estrarre piM


istruzioni eQo dati per volta

'uperamento del limite tecnolo#ico mediante introduzione di introduzione di


una memoria intermedia tra memoria centrale e processore una memoria intermedia tra memoria centrale e processore
che approssimi la velocit& del processore che approssimi la velocit& del processore
%rocessore e .(6
%rocessore e .(6
-$ -$
(nno accademico 2919:2911 (nno accademico 2919:2911
-$ -$

%iccola .(6 molto veloce! interposta tra C%+ e memoria


principale! per mi#liorare le prestazioni del sistema

Uuando viene indirizzata una parola! *uella parola e alcune di


*uelle vicine ven#ono trasferite dalla lenta memoria centrale
nella piM piccola e veloce memoria cache! in modo che la
parola successiva sia accessibile piM velocemente principio di principio di
localit& spazio localit& spazio temporale del soft<are temporale del soft<are"
La memoria cache
La memoria cache
-) -)
(nno accademico 2919:2911 (nno accademico 2919:2911
-) -)

+na parte della memoria centrale la


.26
.26
.ead 2nlF
.ead 2nlF
6emorF
6emorF "! una memoria a sola lettura! destinata a
contenere informazioni non variabili

Caratteristiche delle memorie .26:

accesso casuale alle informazioni accesso casuale alle informazioni

velocit& elevata velocit& elevata inferiore alle .(6"

La .26 viene scritta in modo permanente in fase


costruttiva: le celle della .26 possono essere
successivamente lette! ma mai riscritte

Kiene usata per memorizzare pro#rammi di sistema


La memoria .26
La memoria .26
-- --
(nno accademico 2919:2911 (nno accademico 2919:2911
-- --
La .26 contiene il soft<are e i dati necessari ad
inizializzare il computer ed a far funzionare i dispositivi
periferici
Il nucleo del soft<are della .26 costituito dalle
routine di avviamento
routine di avviamento

che comprendono il
caricatore di
caricatore di
boot
boot

strap
strap ed il
.26 1I2'
.26 1I2'
Le
routine di avviamento
routine di avviamento realizzano linizializzazione del
calcolatore:

/e effettuano un rapido controllo di affidabilit&! per


accertare che tutte le componenti hard<are siano
perfettamente funzionanti

Caricano il sistema operativo dal disco caricatore di


bootstrap"
Il soft<are della .26
Il soft<are della .26

1
1
-7 -7
(nno accademico 2919:2911 (nno accademico 2919:2911
-7 -7
Il soft<are della .26
Il soft<are della .26

2
2
Il
caricatore di boot
caricatore di boot

strap
strap ha la funzione di le##ere un
pro#ramma di lancio dal disco! detto
bootstrap
bootstrap! e di
trasferire ad esso il controllo: il boostrap carica il nucleo
del sistema operativo e lo manda in esecuzione
Il
.26 1I2'
.26 1I2'
1inarF Input
1inarF Input

2utput 'Fstem
2utput 'Fstem

la
parte della .26 attiva *uando il computer al lavoro:
il suo ruolo *uello di fornire un insieme di servizi di
base richiesti per il funzionamento delle periferiche
-8 -8
(nno accademico 2919:2911 (nno accademico 2919:2911
-8 -8

Le operazioni che si effettuano sulla memoria sono


operazioni di
lettura
lettura

e
scrittura
scrittura

0ntrambe

presuppon#ono lutilizzo di un indirizzo che
identifica univocamente la cella interessata
alloperazione

Loperazione di scrittura
distruttiva
distruttiva! cio cancella
linformazione precedentemente contenuta nella cella

Loperazione di lettura preserva il contenuto della cella


indirizzata: allesterno della memoria centrale viene
trasferita copia dellinformazione
2perazioni sulla memoria centrale
2perazioni sulla memoria centrale
-? -?
(nno accademico 2919:2911 (nno accademico 2919:2911
L'architettura di Von Neumann

CPU RAM
Memoria
secondaria
I/O
BUS
-A -A
(nno accademico 2919:2911 (nno accademico 2919:2911
-A -A

Il disco fisso costituito da uno o piM


piatti metallici ricoperti di materiale
ma#netico su entrambe le facce

Ciascuna superficie associata ad una o


piM testine di letturaQscrittura che si
muovono radialmente per le##ereQ
scrivere linformazione or#anizzata in
tracce concentriche
4ischi ma#netici 4ischi ma#netici
0sistono diversi dispositivi di memoria
secondaria: dischi ma#netici hard disD"!
dischi ottici C4! 4K4"! dispositivi +'1!
memorie flash
6emoria non volatile ad alta capacit&
La memoria secondaria
La memoria secondaria
79 79
(nno accademico 2919:2911 (nno accademico 2919:2911
79 79
;
I dischi ma#netici dischi ma#netici rappresentano il mezzo fondamentale per la
memorizzazione di massa

I dischi ruotano ad una velocit& costante" compresa tra i 79 e i


299 #iri al secondo
I dischi ma#netici
I dischi ma#netici

1
1
71 71
(nno accademico 2919:2911 (nno accademico 2919:2911
71 71

Linformazione disposta sul


disco in
tracce
tracce! ovvero in
cerchi concentrici

La densit& dei bit decresce


dalle tracce interne alle piM
esterne per mantenere
costante la *uantit& di dati che
passano sotto le testine
nellunit& di tempo
Le tracce sono divise in
settori
settori
La capacit& di memorizzazione dei dischi cresce in
conse#uenza allo sviluppo tecnolo#ico
Platter
<rac%
Platters
!ectors
<rac%s
I dischi ma#netici
I dischi ma#netici

2
2
72 72
(nno accademico 2919:2911 (nno accademico 2919:2911
72 72

Il numero di bit contenuti in una traccia dellordine


delle centinaia di mi#liaia -12Q)9A7 bFte a settore"

Centinaia di settori -12Q192) per traccia"

4ecine di mi#liaia di cilindri tracce concentriche


disposte sulle diverse facce dei diversi dischi"

%er le##ere o scrivere" sul disco! la testina si deve


posizionare sulla traccia che contiene il dato ed
attendere che il dato passi sotto di essa

Le operazioni di letturaQscrittura si basano sulla propriet&


del campo ma#netico di indurreQessere indotto ilQdal
passa##io di corrente in una bobina
I dischi ma#netici
I dischi ma#netici

$
$
7$ 7$
(nno accademico 2919:2911 (nno accademico 2919:2911

La ma#netizzazione avviene infatti mediante la


testina
testina
ma#netica
ma#netica

una piccola bobina racchiusa in un involucro
di metallo dotato di una minuscola fessura! il
traferro
traferro"

Gacendo passare corrente nella bobina si induce un


campo ma#netico nel traferro invertendo la corrente si
inverte anche il campo"

Uuando si fa passare corrente attraverso la testina


alternandone la direzione! le aree del disco al di sotto
della testina si ma#netizzano in una delle due direzioni:
*uesto procedimento rappresenta la
scrittura su disco
scrittura su disco
I dischi ma#netici
I dischi ma#netici

)
)
7) 7)
(nno accademico 2919:2911 (nno accademico 2919:2911

I
I
dati binari che lunit& scrive sul disco sono tradotti in
dati binari che lunit& scrive sul disco sono tradotti in
un formato costituito da una serie di aree ma#netizzate
un formato costituito da una serie di aree ma#netizzate
in un senso o nell@altro
in un senso o nell@altro

Lettura da disco
Lettura da disco: poichP le particelle ma#netizzate sono
circondate da un campo ma#netico! *uando il traferro
passa sul disco le variazioni del campo inducono sulla
testina una corrente che si manifesta con variazioni di
volta##io alle estremit& della bobinaE i circuiti di lettura
decodificano le variazioni nellandamento dellintensit& di
corrente riconducendole a 9Q1
I dischi ma#netici
I dischi ma#netici

-
-
7- 7-
(nno accademico 2919:2911 (nno accademico 2919:2911
7- 7-

'ui
dischi ottici
dischi ottici si utilizza la tecnolo#ia laser per
realizzare le operazioni di letturaQscrittura

4ensit& dei bit uniforme

+nunica traccia elicoidale oJ

Jtracce piM lontane dal centro del disco sono piM lun#he e
conten#ono un ma##ior numero di settori fino al )9W in
piM rispetto alle tracce vicine al centro di rotazione"
I dischi ottici
I dischi ottici

1
1
77 77
(nno accademico 2919:2911 (nno accademico 2919:2911
77 77

'ui dischi di letturaQscrittura i dati possono essere


modificati piM e piM volte
dischi a cambio di fase
dischi a cambio di fase"

I dischi
C2.6
C2.6!
Crite 2nce
Crite 2nce

.ead 6anF
.ead 6anF! si possono
scrivere una sola volta

La tecnolo#ia ori#inale per dischi C2.6 consiste


nellinserire una pellicola di alluminio tra due piatti di
plastica o di vetro o un pi#mento polimerico"

%er scrivere un bit! lunit& usa un ra##io laser per


praticare un piccolo foro nellalluminio o opacizzare il
pi#mento": linformazione pu, venir distrutta ma non
alterata
I dischi ottici
I dischi ottici

2
2
78 78
(nno accademico 2919:2911 (nno accademico 2919:2911
L'architettura di Von Neumann

CPU RAM
Memoria
secondaria
I/O
BUS
7? 7?
(nno accademico 2919:2911 (nno accademico 2919:2911

Comportamento: Comportamento: Input read once"! output <rite onlF"!


memoria riletturaQriscrittura"

%artner: %artner: uomo o macchina

Kelocit& del flusso dei dati: Kelocit& del flusso dei dati: *uantit& di dati trasferiti nellunit& di
tempo da o verso la C%+ o la memoria centrale
Insieme di dispositivi che consentono lac*uisizione di dati input input"! la
loro archiviazione stora#e stora#e" e la loro presentazione verso il mondo
esterno output output"
'i possono classificare in base a tre diverse caratteristiche:
Iastiera Iastiera input input uomo uomo
6ouse 6ouse input input uomo uomo
.ete .ete inputQoutput inputQoutput macchina macchina
Hard 4isD Hard 4isD stora#e stora#e macchina macchina
v
e
l
o
c
i
t
&
v
e
l
o
c
i
t
&
& &

19 19
) )
;1Qs ;1Qs
19 19
2 2
;1Qs ;1Qs
I dispositivi di Input
I dispositivi di Input

2utput
2utput

Potrebbero piacerti anche