Lezione 1: 29/09/21
Informatica: composto da informazione e automatica
Insieme di quelle discipline e tecniche per: la rappresentazione, il trattamento e trasmissione. Il tutto deve
essere fatto in modo automatico.
Strettamente connessa con l’elettronica (definisce l’architettura, ma anche di utilizzare in modo corretto),
elettromeccanica e automatica.
Computer è un elaboratore elettronico, ed è una macchina concepita per l’elaborazione automatica dei dati.
Il sistema di calcolo sono sistemi in grado di risolvere determinati problemi, costituito da: hardware (ciò che
si può toccare o vedere di un calcolatore es tastiera e monitor), software (componente immateriale, insieme
dei programmi che permettano l’uso effettivo del calcolatore), firmware (componenti hardware pre-
programmati, programmi cablati dentro ad un hardware).
input/output: dispositivi di ingresso attraverso cui l’utente può comunicare e memorizzare dei dati nel
calcolatore. I dispositivi di output sono dispositivi attraverso cui il calcolatore comunica all’utente. I caratteri
vengono codificati dal calcolatore per essere opportunamente trattati dai vari dispositivi. Ci sono delle
convenzioni che devono essere condivise per la trasmissione delle operazioni. I caratteri vengono trattati
come se fossero numeri.
Il calcolatore tratta i caratteri come se fossero numeri (numeri sono codici), e tramite un sistema di codifica
all’interno del calcolatore si rappresentano i caratteri.
Reti: comunicazione fra due o più calcolatori avviene attraverso componenti hardware(cavi) e software
(gestiscono comunicazione nel modo corretto). Ci deve essere un accordo tra protocolli. Non basta solo un
cavo, ma anche programmi che sono in grado di far comunicare tra di loro i calcolatori secondo protocolli
specifici. Se non ci fossero protocolli condivisi la comunicazione non avverrebbe.
Architettura di un sistema di elaborazione: Un calcolatore è costituito da molti dispositivi tra cui anche i
dispositivi di input e output. La parte pregiata del calcolatore è costituita da tanti dispositivi elettronici,
ognuno ha la propria funzione, e fra di loro scambiano informazioni e attraverso questo scambio di
informazioni guidato fa si che il calcolatore esegua i programmi a cui siamo abituati.
Un sistema informatico è costituito da hardware e software e lo possiamo vedere come un’architettura a
strati. Gli strati sono costituiti da:
Hardware: dispositivi elettromeccanici, elettronici, connessi fra di loro secondo l’architettura specifica del
calcolatore.
Firmware: un hardware che ha già dentro un programma dettato per un certo scopo.
Software: sono dei programmi che consentono di utilizzare il calcolatore in modo molto diverso. Il calcolatore
infatti lo usiamo per scopi diversi.
Usiamo la stessa architettura per tante cose diverse e questo è possibile grazie al tipo di architettura con
cui il calcolatore è realizzato.
Questa struttura a strati dei sistemi informatici che quindi prevede
hardware, salendo software e firmware la possiamo vedere in
qualunque calcolatore che abbiamo tra le mani.
Abbiamo in basso hardware+firmware, primo strato software più
di basso livello che è quello che ci consente di utilizzare la macchina
(il sistema operativo) e poi un insieme di programmi. Il terzo livello
è quello delle applicazioni che ci consentono di fare operazioni ulteriori, non solo di gestione del mio
hardware.
Questa rappresentazione a strati di un sistema di calcolo nasce dal concetto di astrazione. A seconda di cosa
ci serve ci possiamo mettere al livello di astrazione necessario.
A seconda di cosa ci serve ci mettiamo al livello di astrazione necessario.
TECNOLOGIA DIGITALE
I calcolatori sono macchine digitali, digitali perché le informazioni che vengono rappresentate all’interno de
calcolatore sono rappresentate in forma digitale perché i dispositivi alla base della costruzione del calcolatore
sono dispositivi digitali. I dispostivi digitali sono dispositivi che lavorano a due stati distinti. (possiamo
immaginare un dispositivo digitale come una lampadina accesa o spenta. È un dispositivo digitale perché ha
due soli stati accesa o spenta. Una certa sequenza di lampadine accese o spente mi può rappresentare
un’informazione). All’interno del calcolatore si usano dispositivi che lavorano a due stati come una lampadina
accesa o spenta e questi stati distinti si rappresentano tendenzialmente con 0 e 1. L’unità logica di
rappresentazione delle informazioni è chiamata bit. Proprio perché dentro al calcolatore sono utilizzati
dispositivi a due livelli le informazioni vengono rappresentate sotto forma di sequenze di bit che sono unità
di informazioni che possono valere 0 o 1. (per rappresentare numeri superiore di valori occorre utilizzare
n
tanti bit per rappresentare qualunque numero). Posso generare 2 valori.
Nel calcolatore rappresenteremo dati, immagini, tutte le operazioni.
CONCETTI BASE: UNITA’ DI MISURA
Bit(b): rappresenta l’unità di misura elementare dell’informazione. Si chiama binary digit (cifra binaria).
Normalmente si rappresenta con 0 e 1 e descrive stati diversi di qualunque dispositivo elettronico si voglia
utilizzare.
Byte rappresentato con B: sequenza di 8 bit (il singolo bit non ci serve a niente perché rappresenta solo 2
!
valori) (8 cifre, nella memoria del calcolatore le informazioni vengono memorizzate a blocchi di
2 ).
8 bit quindi a byte.
"# $
KB (kilo byte): 1024 byte = byte
2 = 10
%# &
MG (megabyte): = 1.048.576 byte= byte (milione)
2 10
$# '
GB (giga byte): = 1.073.741.824 byte = byte (miliardo)
2 10
(# "%
TB (tera byte): = 1.099.511.627.776 byte = byte (bilione)
2 10
Lezione 2: 30/09/2021
ARCHITETTURA DEL CALCOLATORE
La costruzione dei primi calcolatori risale all'inizio degli Anni '40 con l’avvento della tecnologia elettronica.
(c’erano degli interruttori che facevano eseguire le sequenze di zeri e uno) i primi esemplari venivano
programmati mediante connessioni elettriche e commutatori.
L’architettura di Von Neumann si dice essere molto importante perché introduce i cosiddetti calcolatori a
programma memorizzato realizzati negli anni ’40. Significa che il calcolatore che segue l’architettura di Von
Neumann è un calcolatore …. Perché potendo caricare nella propria memoria
programmi diversi, è in grado di risolvere problemi diversi.
All’inizio il calcolatore nasceva per svolgere uno e un solo programma, ma con l’avvento di questa
architettura è stato possibile creare un calcolatore che in modo automatico potesse eseguire programmi
diversi ai fini fi risolvere problemi di categorie diverse. (i calcolatori infatti possono svolgere problemi diversi,
basta solo eseguire il programma giusto per quello che ci serve, ma l’architettura di base è la stessa).
Oltre al fatto che il programma è memorizzato all’interno di un suo dispositivo di memoria, viene introdotto
anche il concetto di unitarietà di rappresentazione dei dati e istruzioni. Vuol dire che nella memoria del
calcolatore, oltre al programma, che è l’insieme delle operazioni che il calcolatore deve svolgere, ci sono
anche i dati che risiederanno nello stesso supporto di memorizzazione in modo totalmente indistinto. La
memoria è un dispositivo all’interno del calcolatore su cui risiederanno il programma da eseguire, sia i dati
su cui il programma dovrà fare delle operazioni.
Il calcolatore è una macchina che sa fare poche cose, ma molto velocemente. La capacità degli informatici è
quella di essere stati in grado di trasformare qualunque programma complesso come la sequenza di
operazioni molto semplici che il calcolatore è in grado di risolvere.
I calcolatori si sono diffusi negli anni 60-70’, ma negli anni ’80 si è diffuso il personal computer. I primi
calcolatori si trovavano in enormi stanze, erano condivisi da molte persone. Il calcolatore ad uso personale
nasce solo negli anni “80.
La componente fondamentale di qualunque calcolatore è il microprocessore che è presente non solo nei
calcolatori, ma anche in tantissimi dispositivi che usiamo oggigiorno (ricevitori satellitari, lavatrici, ecc…) che
sono programmati per fare qualcosa, non sono dispositivi di uso generale.
L’elaboratore, che è il sistema di calcolo, è un’apparecchiatura:
- digitale (è in grado di manipolare informazioni che sono rappresentate da sequenze di 0 e di 1 che
sono il linguaggio del calcolatore. Qualsiasi informazione che vado a rappresentare sarà scritta sotto
forma di sequenze di 0 e di 1. Anche le istruzioni sono scritte in sequenze di 0 e di 1. I calcolatori usano
un alfabeto finito proprio perché è costituito da sole due cifre, o 0 o 1. Per poter rappresentare tante
informazioni distinte avremmo più di una singola cifra binaria, ma tanti blocchi di cifre binarie),
- elettronica: perché alla base ci sono particolari dispositivi elettronici
- automatica perché è in grado di eseguire dei programmi in modo automatico. Quando si lancia
l’esecuzione del programma il calcolatore è in grado di eseguire l’intero programma senza l’intervento
umano, a meno che non serva per inserire dati di input.
Si dice che l’elaboratore sia una macchina universale universale perché avendo la possibilità di memorizzare
all’interno del proprio dispositivo di memoria programmi diversi, cambiando programma, cambia anche la
natura dei problemi che il calcolatore risolverà.
ARCHITETTURA DELLA MACCHINA DI VON NEUMANN
Il calcolatore è costituito da questo rettangolo centrale che si chiama unità centrale e da un insieme di
dispositivi cioè unità di ingresso e uscita. Le operazioni di ingresso e uscita sono tutte le operazioni che ci
consentono di comunicare con il calcolatore o che il calcolatore comunichi all’utente i valori o che ha
manipolato o di cui ha bisogno per svolgere certe operazioni (tastiera con cui comunichiamo le credenziali
per l’accesso, ecc… unità di uscita: sono le unità in cui il calcolatore andrà a stampare o scrivere dei risultati
delle operazioni svolte o comunica dei messaggi all’utente per capire se il programma si aspetta un altro
dato, ecc…).
Tramite l’unità di ingresso quello che viene trasferito al calcolatore sono i programmi che il calcolatore dovrà
eseguire e i dati sui cui il programma dovrà fare delle elaborazioni.
Qualunque programma che mando in esecuzione non può risiedere direttamente nell’hard disk o sulla
chiavetta ecc… ma deve essere al momento dell’esecuzione caricato in memoria centrale, quel dispositivo
che memorizza dati e programmi. I programmi e dati stanno fuori fin tanto che il programma deve essere
eseguito, solo in quel momento vengono caricati in memoria centrale e ha inizio la vera e propria esecuzione
del programma.
Quando il calcolatore manipolerà i dati attraverso il programma, li terrà in memoria centrale, nel momento
in cui voglio rendere persistente i risultati delle operazioni, dovrò per forza mandarli fuori (metterli su una
chiavetta, stamparli a video ecc). senza queste periferiche qualsiasi operazione il cui risultato non viene
comunicato all’esterno rimane inutile a chi ha utilizzato il programma perché non vengono trasferite
all’esterno.
L’elaboratore quando viene caricato un programma generico in memoria centrale, è in grado di eseguire in
modo automatico, a seconda di come è stato scritto il programma, una serie di operazioni che sono l’insieme
di tutti i passaggi a cui devono essere sottoposti i dati in ingresso per produrre i risultati che servono. Il
programma non è altro che la descrizione delle operazioni che i dispositivi che compongono la CPU (cuore
del calcolatore) dovrà eseguire in un ordine prestabilito. Non è solo importante definire le operazioni che la
CPU eseguirà, ma ance la sequenza delle operazioni che dovrà eseguire.
La CPU è un insieme di dispositivi che alla base è in grado di svolgere poche operazioni e non particolarmente
complesse. La complessità sta nel riuscire a trasformare qualunque problema nella sequenza di operazioni
semplici.
Quando il programma è caricato in memoria centrale della CPU, che è il microprocessore, l’unità che è in
grado di coordinare l’intero processo di esecuzione è l’unità di controllo, che non fa altro che andare a
prendere dalla memoria una ad una tutte le istruzioni del programma, le interpreta, capisce qual è la
prossima operazione da fare attiva nel modo corretto i dispositivi che sono preposti a fare quell’operazione.
L’unità di controllo quindi sarà in grado di coordinare il funzionamento di tutti i dispositivi che sono all’interno
dell’unità centrale, ma anche in memoria (la memoria deve comunicare con la CPU) perché tutte le istruzioni
sono in memoria e una alla volta la CPU la preleverà, la interpreterà e andrà a ripescarsi l’istruzione successiva
da eseguire. Quindi è proprio una continua sequenza di operazioni di lettura di istruzione, esecuzione
dell’istruzione e lettura della successiva fino alla fine dell’esecuzione del programma.
I microprocessori sono il rettangolo azzurro del disegno, che è composto da due parti:
- unità di controllo che è preposta ad interpretare uno ad uno l’istruzione del programma
- ALU: quella che fa i calcoli, operazioni di tipo logico.
MEMORIA CENTRALE
È una componente fondamentale di un calcolatore. Quando si parla di un calcolatore si parla di due tipi di
memoria, quella centrale che è nell’unità centrale e che conterrà il programma che deve essere eseguito dal
calcolatore, e la memoria esterna che è quella secondaria presente su un hard disk o sulla chiavetta (dischi e
chiavetta sono dispositivi di input/output, non sono delle memorie come si intende all’interno dell’unità
centrale).
L'unità di memorizzazione nella memoria centrale del calcolatore è il byte (il singolo bit non ha senso). Le
celle di memoria di un calcolatore sono una sequenza di byte che per essere individuati hanno bisogno di
essere associati ad un indirizzo che lo distingue da tutti gli altri. Normalmente è un numero che va da 0 a M-
1 dove M è il numero delle celle. Due celle contigue sono identificate da due numeri consecutivi.
NUMERAZIONE DECIMALE
Lavorando con sole due cifre è ancora più importante porsi il problema di quante cifre binarie servono per
rappresentare un numero.
Immaginiamo di avere 10 cifre decimali che vanno da 0 a 9, ho a disposizione n cifre decimali pertanto il
n
numero di valori rappresentabili è pari a 10 . n
Il valore minimo che rappresento è 0, il valore massimo è 10 -1.
Il nostro problema è quello di rappresentare delle informazioni all’interno della memoria centrale e quindi
mi devo porre il problema di quante cifre binarie mi servano per rappresentare un certo range di valori.
Se ho una come unità minima di informazione il bit (0,1 che sono l’alfabeto del calcolatore) e ho a disposizione
)
n bit, quante possibili valori diversi posso rappresentare? n= 2
Range di valori: min 0, max n-1. 27
Esempio: Se ho una memoria di 128 MB ossia di 2 avrò bisogno di 27 bit perché 27 è l’esponente
MEMORIA CENTRALE pt.2
Ciascuna cella della memoria è individuata da un indirizzo (par te da 0 e va in crescendo) che deve essere
n
diverso da cella a cella, costituito da un numero variabile da 0 a 2 -1, in cui n è la dimensione in bit
dell’indirizzo.
La memoria centrale è fatta da una sequenza di celle. Ha un nome, si dice anche memoria ad accesso casuale
(Random Access Memory o RAM). È una memoria ad accesso casuale proprio perché è importante il fatto
che il tempo di accesso alla cella di memoria per andarne a leggere il contenuto o per scriverci un valore, sia
costante. Il tempo di accesso alla memoria è uguale indifferentemente dall’indirizzo di memoria in cui sono.
(operazione di lettura/di quello che c’è scritto ossia una sequenza di 0 e 1 che rappresenterà secondo le
convenzioni un dato, operazione di scrittura/andrà a scrivere il risultato dell’operazione svolta in una cella di
memoria. L’operazione di lettura non è un’operazione distruttiva, mentre la scrittura si perché quando io
leggo un valore, lo leggo, ma non lo sposto, rimane in memoria in quella cella, la scrittura invece è distruttiva
perché se decidessi di fare la somma tra 3 e 2 e dopo aver fatto la somma scrivessi il risultato nella stessa
cella del 3, il valore 3 si perderebbe e lì avremmo il risultato).
C’è un secondo tipo di memoria presente in un calcolatore, la memoria ROM (read only memory) cioè è una
memoria a sola lettura. I programmi possono fare solo operazioni di lettura, non si può quindi fare
l’operazione di scrittura che è distruttiva e cancella tutto il contenuto. Il suo contenuto viene reso persistente
in fase di fabbricazione. Una volta fabbricata la ROM e che è stato scritto un programma in modo
permanente, si mette nel calcolatore e quel programma servirà per la gestione di quella macchina e in
particolare serve nella fase di accensione dell’elaboratore. Il calcolatore di per se è fatto da una serie di
dispositivi elettronici. Quando accendiamo il calcolatore, c’è una fase di inizializzazione in cui il programma
che è memorizzato nella memoria ROM verrà eseguito immediatamente dal calcolatore per far sì che nella
memoria centrale RAM vengano caricati i programmi che servono all’utilizzo del calcolatore. Fin tanto che
non vi
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
-
Appunti Informatica
-
Appunti Informatica
-
Appunti Fondamenti di Informatica
-
Appunti fondamenti informatica