fondamenti di informatica · il termine “informazione” –1/2 •nei nostri discorsi •mezzi...

109
Fondamenti di Informatica Dati, Informazione ed Elaborazione dell’Informazione Dati, Informazione ed Elaborazione dell’Informazione Prof. Christian Esposito Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) A.A. 2017/18

Upload: others

Post on 18-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

FondamentidiInformatica

Dati,InformazioneedElaborazionedell’Informazione

Dati , InformazioneedElaborazionedel l ’ Informazione

Prof. Chr i st ian Espos i toCorso d i Laurea in Ingegner ia Meccanica e Gest iona le (C lasse I )A .A . 2017/18

Page 2: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Iltermine“Informatica”:Etimologia

• Deriva dal francese informatique• Coniato negli anni ‘60 da Philippe Dreyfus• Ottenuto come contrazione dei termini “information” e“automatique”

• Usato per indicare la disciplina tecnico-scientifica che si occupa dellaprogettazione e costruzione di macchine in grado di trattare (oelaborare) in modo automatico l’informazione

Dati,InformazioneedElaborazionedell’Informazione 01/108

Page 3: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Trattamentodell’Informazione• In generale, il trattamento dell’informazione riguarda la suaelaborazione in qualunque modo rilevabile da unosservatore

• Riguarda tutto ciò che possiamo fare con i nostri dispositividigitali• Stampa di un file di testo da parte di un sistema informatico• Eseguire operazioni aritmetiche• Archiviare foto digitali• Ricerca su Google• Scrivere un post sulla bacheca di Facebook• E molto altro ancora…

Dati,InformazioneedElaborazionedell’Informazione 02/108

Page 4: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Information&CommunicationTechnology

• Inalternativaaltermine“informatica”vienespessoutilizzatoiltermine“tecnologiadell’informazione”• Dall’ingleseInformationTechnologyoIT

• Negliultimidecennilecapacitàdeisingolicalcolatorisononotevolmenteaumentategrazieallalorointerconnessioneinrete• Icomputersonodiventatideglistrumentidicomunicazione

• Laconvergenzatralatecnologiadell’informazioneeletelecomunicazionihadatovitaadunadisciplinacheprendeilnomediInformation&Communication Technology(ICT)

Dati,InformazioneedElaborazionedell’Informazione 03/108

Page 5: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Iltermine“Informazione”– 1/2• Neinostridiscorsi

• Mezzidiinformazione• Societàdell’informazione• Tecnologiedell’informazione• Poteredell’informazione• Monopoliodell’informazione

• Nell’ambitodell’informatica,ilsignificatodeltermine“informazione” èmessospessoinrelazioneconquellodi“dato” edi“conoscenza”

Dati,InformazioneedElaborazionedell’Informazione 04/108

Page 6: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Iltermine“Informazione”–2/2

DATI

INFORMAZIONI

CONOSCENZA

LIV

ELL

O D

I A

STR

AZI

ON

E

39,5

La temperatura corporea di Tizio è 39,5 misurata in gradi centigradi

La temperatura corporea di 39,5 di Tizio viene considerata un segnale d’allarme

Dati,InformazioneedElaborazionedell’Informazione 05/108

Page 7: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Dati,InformazionieConoscenza

• Dati• Insiemedisimbolitracciatisuunsupportofisico,cherappresentanounaproprietàdiunoggettonelmondoreale,manoncontengonoalcunriferimentoallaproprietàacuisiriferiscono

• Informazioni• Datimessiinrelazioneconlaproprietàacuiessisiriferiscono

• Conoscenza• Regolechepermettonoditrarrevantaggiodalleinformazioni

Dati,InformazioneedElaborazionedell’Informazione 06/108

Page 8: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

AncorasuiDati• Rappresentanolamateriaprimadeltrattamentodell’informazione

• Possonoessereclassificatiin• Datisemplici,comeinumeri,icaratteri,etc.• Daticomplessi,comeifilm,isuoni,leimmagini,etc.

• Lagestionediquestotipodidatièresapossibiledall’incredibilepotenzaraggiuntadaglielaboratorinell’ultimodecennio

Dati,InformazioneedElaborazionedell’Informazione 07/108

Page 9: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Dato

Dati,InformazioneedElaborazionedell’Informazione 08/108

Page 10: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Informazione

Dati,InformazioneedElaborazionedell’Informazione

La Cupola di Santa Maria del Fiore a Firenze, alta 116metri

09/108

Page 11: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Conoscenza

Dati,InformazioneedElaborazionedell’Informazione

La Cupola di Santa Maria del Fiore è la costruzione più alta di Firenze

10/108

Page 12: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaRealizzazione(parziale)diunSogno

• Disporredielaboratoriautomatici• Macchineingradodicompiereautonomamenteattivitàdielaborazionedell’informazione

• Garantiredeibeneficirispettoall’elaborazionecondottadall’uomo• Riduzionedeitempi• Maggioreaffidabilità• Incombenze“noiose”• Esecuzioneautomaticadioperazionicherichiedonocompetenzepococomuni

Dati,InformazioneedElaborazionedell’Informazione 11/108

Page 13: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Elaborazionedell’Informazione

Input OutputElaborazione

Dati,InformazioneedElaborazionedell’Informazione 12/108

• Il calcolo automatico consiste nella trasformazione di unaseries di dati iniziali (o input) in dei dati finali (o output) permezzo di una o più apposite regole di elaborazione.

Y=F(X)

•Un algoritmo è l’insieme delle regole (o procedimentomatematico) per risolvere un problema di elaborazione.

Page 14: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Elaborazionedell’Informazione

Input OutputElaborazione

EsempioInput: due numeri interiElaborazione: effettuane la moltiplicazione Output: prodotto

Dati,InformazioneedElaborazionedell’Informazione 13/108

Page 15: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

GliElaboratori(oCalcolatori)Elettronici– 1/2

• Svolgonounlavorocheperl’uomoènaturale,ma• Lofannorapidamente• Sonoinfaticabili• Riesconoagestireenormiquantitàdidati• Inalcunicasipermettonodisuperarevincolitemporaliespaziali• …

• Adifferenzadeglielettrodomesticisonoprogrammabiliepossonoessereadattatiarisolveremoltitipidiproblemi• Apattochequestipossanotradursiinunnumerofinitodioperazioni

Dati,InformazioneedElaborazionedell’Informazione 14/108

Page 16: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

GliElaboratori(oCalcolatori)Elettronici– 2/2

• L’informazionechehaattiratol’attenzionedell’uomoversolarealizzazionedielaboratorièquellaespressainformaquantitativa• Inparticolarenumerica

• Pertalemotivosièdiffusoiltermine“calcolatore”(ininglesecomputer)chevieneusatospessoinalternativaa“elaboratore”

• Ininglese,computerscience èlatraduzionedelnostrotermine“informatica”

Dati,InformazioneedElaborazionedell’Informazione 15/108

Page 17: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

IlComputer• IlComputer èunelaboratoreelettronicodigitale

• Elaboratore:macchinaingradodirappresentareedelaboraredatiinbaseadunaseriediistruzioni• Formulateememorizzateinmodotaledapoteressereeseguiteautomaticamente

• Elettronico: indicacheilcomputerutilizzacomponentielettronici

• Digitale: indicacheilcomputerelaboraememorizzainformazionirappresentatemedianteduesimboli:0 e1• Conquesteduecifre,usateincombinazionidiverse,sipossonorappresentaretuttiidati(parole,numeri,immagini,filmati,etc.)

Dati,InformazioneedElaborazionedell’Informazione 16/108

Page 18: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Computerantelitteram(1/4)• LamacchinadiAnticitera (ingrecoantico:ὁ μηχανισμόςτῶν Ἀντικυθήρων),èilpiùanticocalcolatoremeccanicoconosciuto,databileintornoal150-100a.C.

• Si tratta di un sofisticato planetario, mosso daruote dentate, per calcolare il sorgere del sole,le fasi lunari, i movimenti dei cinque pianetiallora conosciuti, gli equinozi, i mesi, i giornidella settimana e le date dei giochi olimpici.

Dati,InformazioneedElaborazionedell’Informazione 17/108

Page 19: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Computerantelitteram(2/4)• Nel XVII secolo Nepero, con le teorizzazioni sui logaritmi,permette nel 1632 al matematico inglese William Oughtreddi realizzare il regolo calcolatore, con il quale si reseroimmediate molte operazioni matematiche.

• Intorno al 1642 il filosofo francese Blaise Pascal realizzò lasua celebre Pascalina, ottimizzata per operazioni di sommae sottrazione; sulla base di questa, non tardò Leibniz (1673)a realizzare una macchina capace di moltiplicare e dividere.

Dati,InformazioneedElaborazionedell’Informazione 18/108

Page 20: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Computerantelitteram(3/4)• Nell'Ottocento sisvilupparono i rudimentidell'elaborazione basatasul sistema numericobinario (0,1) e le schedeperforate, e ne nacquero leprime applicazioni.

Dati,InformazioneedElaborazionedell’Informazione 19/108

• Negli anni Trenta nelNovecento, nasce ilprogetto Memex, unsistema meccanico diarchiviazione e consul-tazione dati.

Page 21: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Computerantelitteram(4/4)• Nel 1939 Konrad Zuse costruì loZ1, primo di una innovativa seriedi calcolatori elettromeccanicibasati sul sistema binario eprogrammabili, funzionantiprima a memorie elettro-meccaniche e poi a relè.

Dati,InformazioneedElaborazionedell’Informazione 20/108

• Abbiamo poi Colossus,costruito nel 1944 da AlanTuring, che è stato il primocomputer elettronicoprogrammabile.

Page 22: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Modellidell’informatica(1/8)• Alla base dei moderni calcolatori troviamo una serie dimodelli formali, o oggetti matematici, che ne descrivono ilcomportamento in termini di funzioni effettuate,informazioni che possono essere processate, e la suaevoluzione temporale rappresentata da apposite formule,equazioni e procedimenti matematici.

• Uno dei modelli fondamentali dell’informatica è l’automa astati finiti, che rappresenta una prima astrazione di unamacchina che esegue algoritmi, e possiede uno stato oparticolare condizione di funzionamento.

Dati,InformazioneedElaborazionedell’Informazione 21/108

Page 23: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Modellidell’informatica(2/8)• Un automa a stati finiti si compone della quintupla (Q, I, U,t, w), dove:• Q è l’insieme finito dei suoi stati interni;• I è l’insieme finito dei suoi ingressi;• U è l’insieme finito delle sue uscite;• t è la funzione di transizione di stato dato un ingresso ed effettua ilmapping degli elementi del prodotto cartesiano QxI in Q:

𝑡: 𝑄×𝐼 ⟶ 𝑄• w è la funzione di uscita, che determina l’uscita in base allo stato eall’ingresso ricevuto, ed effettua un mapping degli elementi delprodotto cartesiano QxI in U:

w: 𝑄×𝐼 ⟶ 𝑈

Dati,InformazioneedElaborazionedell’Informazione 22/108

Page 24: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Modellidell’informatica(3/8)• Esiste un modello concettuale con due componenti:

• uno che computa le funzioni t e w;• un altro (memoria) ripropone in ingresso il nuovo stato appenadeterminato.

• Questo modello è detto di Mealy, mentre un altro è quello diMoore con uscite dipendenti solo dallo stato: w’: 𝑄 ⟶ 𝑈.

• È stata dimostrata l’equivalenza dei due modelli, e letrasformazioni per passare da un modello all’altro.

Dati,InformazioneedElaborazionedell’Informazione 23/108

t,w

Q

I U

Page 25: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Modellidell’informatica(4/8)• Un modello di automa è rappresentabile sia per mezzo diuna tabella di stato dove le righe corrispondono agli staticorrenti, mentre le colonne agli ingressi ed ogni cella indicalo stato successivo e l’uscita.

• Una rappresentazione più immediata visiva è quella fornitadal cosiddetto diagramma degli stati, dove• ogni stato è rappresentato da un nodo• le transizioni tra stati da archi direzionati nel verso dello statodi partenza a quello di arrivo

• sugli archi è indicato l’ingresso che ha fatto scattare latransizione e l’uscita ottenibile, separati da ‘/’.

Dati,InformazioneedElaborazionedell’Informazione 24/108

Page 26: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Modellidell’informatica(5/8)Esempio di automa di Mealy: Distributore di bibite

• Ipotizziamo la progettazione dell’intelligenza di undistributore di bibite composto da:• una gettoniera che accetti due tipologie di monete (10 e 20centesimi) e generi un codice binario che rappresenti gli input;

• un dispositivo che, su comando dell’automa, sganci la bibita;• un dispositivo che, su comando dell’automa, sganci il resto.

Dati,InformazioneedElaborazionedell’Informazione 25/108

Page 27: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Modellidell’informatica(6/8)

Dati,InformazioneedElaborazionedell’Informazione 26/108

• L’ingresso dell’automa è l’insieme I i cui elementi sonol’inserimento di 10 €cent, di 20 €cent e di nessuna moneta,ed è rappresentabile con due bit.

• I comandi per lo sgancio, invece,richiedono un bit ciascuno, perchéognuno di loro prevede solo duecondizioni (sganciare o non sganciare).

•Gli stati corrispondonoalla somma accumulatacon l’introduzione dellemonete: 0 €cent, 10€cent, 20 €cent, 30 €cent.

Page 28: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Modellidell’informatica(7/8)

Dati,InformazioneedElaborazionedell’Informazione 27/108

Tabella degli stati

Tabella delle uscite

Page 29: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Modellidell’informatica(7/8)

Dati,InformazioneedElaborazionedell’Informazione 28/108

Rispettoall’automadiMealy,èstatonecessarioaggiungerequalchestatoinpiù.

Page 30: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Modellidell’informatica(7/8)

Dati,InformazioneedElaborazionedell’Informazione 29/108

Tabella degli stati

Tabella delleuscite

Page 31: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Modellidell’informatica(7/8)

Dati,InformazioneedElaborazionedell’Informazione 30/108

Dopo I due stati finali, essendosi chiuso il ciclo per l’acquisizionedel prodotto, il sistema si riporta nello stato di riposo. Nei duestati finali, gli ingressi rappresentano condizioni di indifferenza(don’t care) e questo giustifica la X sulle evoluzioni finali cheportano allo stato di riposo.

Dopo I due stati finali, essendosi chiuso il ciclo per l’acquisizionedel prodotto, il sistema si riporta nello stato di riposo. Nei duestati finali, gli ingressi rappresentano condizioni di indifferenza(don’t care) e questo giustifica la X sulle evoluzioni finali cheportano allo stato di riposo.

Page 32: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Modellidell’informatica(8/8)

Dati,InformazioneedElaborazionedell’Informazione 31/108

• Lo stato degli automi rappresenta la memorizzazione dieventi già accaduti nel processo in esame e che influisconosul comportamento futuro dell’automa.

• Oggetto dell’informatica è studiare e realizzare appositidispositivi per la conversazione dello stato detti registri.

• Un registro è un dispositivo fisico k-stabile, atto a memorizzare k statidistinti messi in relazione a k numeridistinti. Un registro è composto da uninsieme di elementi fisici bistabili (dettiflip-flop), ciascuno capace di contenereun’informazione a due valori detta bit.

Page 33: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

MacchinadiTuring (1/5)

Dati,InformazioneedElaborazionedell’Informazione 32/108

• Il modello di automa fornisce il concetto di elaborazionecome sequenze di azioni e di stato memorizzato in unregistro, ma non aiuta a capire bene il concetto dialgoritmo perché generico e non dettaglia le possibili azionielaborative.

• Il modello di macchina di Turing è un modellofondamentale per lo studio degli algoritmi, definirne lacalcolabilità e complessità, e determinarne l’equivalenza.

• Questa macchina è un particolare automa per cui sonodefiniti degli ingressi e delle uscite come insiemi di simboli,e ha un meccanismo di lettura (input) e scrittura (output)con una testina su un nastro.

Page 34: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

MacchinadiTuring (2/5)

Dati,InformazioneedElaborazionedell’Informazione 33/108

•Una memoria come un nastro ideale,successione di caselle vuote o contenentiun simbolo di un alfabeto.

•Una testina di lettura e scrittura dellaposizione corrente sul nastro, spostabiledi una posizione a destra o a sinistra.

•Un dispositivo di controllo, conun insieme finito di stati, ecapace di cambiare stato edeffettuare un’operazione elabo-rativa data la coppia statocorrente e simbolo letto.

Page 35: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

MacchinadiTuring (3/5)

Dati,InformazioneedElaborazionedell’Informazione 34/108

Esempio Macchina di Turing: Una macchina per la somma didue numeri interi

• Ipotizziamo di voler realizzare una macchina di Turing perla somma di due interi. Il primo passo è la codifica dei duenumeri in input:• un numero naturale x sia rappresentato da x+1 simboli ‘1’;• i due numeri interi siano inizialmente presenti sul nastro unodi seguito all’altro e separati dal simbolo ‘;’;

• I due numeri sono delimitati sul nastro dal simbolo ‘@’ postoinizialmente e alla fine dell’input.

@ 1 1 1 1 ; 1 1 1 @

Page 36: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 35/108

• Il dispositivo di controllo è il seguente automa a stati finiti:• Attraversa la stringa in input fino a raggiungere il primo ‘;’ alla sua destra:sostituisce tale simbolo con 1;

• Si muove verso sinistra fino a trovare il primo ‘@ e cancella i due simboli ‘1alla sua destra (che sicuramente esistono).

• Posiziona la testina sul primo simbolo ‘1’.

Page 37: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 36/108

• Il dispositivo di controllo è il seguente automa a stati finiti:• Attraversa la stringa in input fino a raggiungere il primo ‘;’ alla sua destra:sostituisce tale simbolo con 1;

• Si muove verso sinistra fino a trovare il primo ‘@ e cancella i due simboli ‘1alla sua destra (che sicuramente esistono).

• Posiziona la testina sul primo simbolo ‘1’.

Stato iniziale dellamacchina.

Stato finale dellamacchina.

Transizione di stato: ad ogni transizione è associataun’etichetta formata da una lista di triple <σ,τ,m>, dove σ è ilsimbolo letto sul nastro, τ è quello scritto, e m è il movimentodella testina, 1 per spostamento a destra, -1 per quello asinistra e 0 per fermo.

Page 38: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 37/108

@ 1 1 1 1 ; 1 1 1 @

T

Operazione:3+2

Page 39: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 38/108

@ 1 1 1 1 ; 1 1 1 @

T T

Page 40: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 39/108

@ 1 1 1 1 ; 1 1 1 @

T

Page 41: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 40/108

@ 1 1 1 1 ; 1 1 1 @

T

Page 42: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 41/108

@ 1 1 1 1 1 1 1 1 @

TT

Page 43: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 42/108

@ 1 1 1 1 1 1 1 1 @

T

Page 44: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 43/108

@ 1 1 1 1 1 1 1 1 @

T T

Page 45: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 44/108

@ @ 1 1 1 1 1 1 1 @

T T

Page 46: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 45/108

@ @ @ 1 1 1 1 1 1 @

T T

Risultato:5

Page 47: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

MacchinadiTuring (5/5)

Dati,InformazioneedElaborazionedell’Informazione 46/108

• Esistono macchine di Turing che terminano le loro attivitàarrestandosi, e macchine che operano senza mairaggiungere la loro terminazione.

• Una macchina di Turing che si arresti e trasformi un nastrot in uno t’ rappresenta un algoritmo per l’elaborazioneY=F(X), dove X e Y sono codificati in t e t’. Un algoritmo ètutto ciò che può essere realizzato con una macchina diTuring.

• TESI di CHURCH: Non esiste un formalismo né unamacchina concreta che possa calcolare una funzione noncalcolabile secondo Turing.

Page 48: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

ArchitetturadiVonNeumann:CenniStorici

• L’architettura di un calcolatore reale (computer) è moltocomplessa.

• L’architettura di von Neumann è un modello semplificatodei calcolatori moderni.

• John von Neumann, matematico ungherese, progettò,verso il 1945, il primo calcolatore con programmimemorizzabili anziché codificati mediante cavi e interruttori• L’architettura definita prese il nome di Architettura di VonNeumann e divenne il riferimento per la quasi totalità deicalcolatori costruiti da allora ad oggi

Dati,InformazioneedElaborazionedell’Informazione 47/108

Page 49: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

ArchitetturadiVonNeumann•NotaanchecomemacchinadiVonNeumannomodellodiVonNeumann

•Modelloconcettualediun’architetturadicomputerchepermettedirappresentare,memorizzareedelaborareleinformazioni

•Èilmodellosecondoilqualeèorganizzatalamaggiorpartedeimodernielaboratori

ArchitetturadiVonNeumann

Sottosistema di interfaccia

Sottosistema di memorizzazione

Sottosistema di elaborazione

Connessione/comunicazione

Dati,InformazioneedElaborazionedell’Informazione 48/108

Page 50: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

ArchitetturadiVonNeumann:CaratteristicheEssenziali– 1/2• Obiettivo:

• Realizzazionediuncalcolatoreuniversale(generalpurpose)

• Presenzadiundispositivodimemorizzazioneincuièpossibilerappresentaresiadaticheistruzioni• Utilizzodell’aritmeticabinariainvecechequelladecimale(maggioridettaglinellelezionisuccessive)• Separazionenettatradispositivodimemorizzazioneedispositivodielaborazione

Dati,InformazioneedElaborazionedell’Informazione 49/108

Page 51: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

ArchitetturadiVonNeumann:CaratteristicheEssenziali– 2/2• Proceduralità: possibilitàdieseguiredifferentiprogrammimemorizzati• Programma: sequenzadiistruzionidaeseguireperottenerelasoluzioneadunadataclassediproblemi

• Sequenzialità: istruzionieseguiteinmodostrettamentesequenziale

Dati,InformazioneedElaborazionedell’Informazione 50/108

Page 52: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

ArchitetturadiVonNeumann:Componenti

• L’architetturadiVonNeumann ècostituitadaquattrocomponentiprincipali(ofunzionali)• MemoriaCentrale

• Memorizzaeforniscel’accessoadatieprogrammi• UnitàCentralediElaborazione(CPU)

• Esegueistruzioniperl’elaborazionedeidati• Svolgeanchefunzionidicontrollo

• InterfaccediIngressoeUscita(operiferiche)• Componentidicollegamentoconleperiferichedelcalcolatore

• Bus• Trasferiscedatiedinformazionidicontrollotralecomponentisuddette

Dati,InformazioneedElaborazionedell’Informazione 51/108

Page 53: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

ArchitetturadiVonNeumann

Dati,InformazioneedElaborazionedell’Informazione 52/108

Page 54: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

ArchitetturadiVonNeumanninConcreto

Dati,InformazioneedElaborazionedell’Informazione 53/108

BUS di sistema

CPU

tastiera mouse memoria dimassa monitor

Memoria centrale

Periferiche

Page 55: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Trasferimento• Obiettivo: permettereloscambiodiinformazionitralevariecomponentifunzionalidelcalcolatore• Trasferimentodeidatiedelleinformazionidicontrollo

• Duepossibilisoluzioni• Collegareciascunacomponenteconognialtracomponente

• Collegaretuttelecomponentiaununicocanale(bus)

• L’utilizzodiunbusfavoriscelamodularità el’espandibilità delcalcolatore

Dati,InformazioneedElaborazionedell’Informazione 54/108

Page 56: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

ArchitetturadiVonNeumann

Dati,InformazioneedElaborazionedell’Informazione 55/108

Page 57: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

BUS– 1/2• Ilbus disistemaassicural’interconnessionetraglielementidellamacchinadiVonNeumann• Tuttiitrasferimentiavvengonoattraversoilbus

• Ilbusmetteincollegamentologico idueelementicoinvoltineltrasferimento,infunzionedell’operazionedaeseguire• Leoperazionisisuccedonoinmodosincrono rispettoallacadenzaimpostadaunorologiodisistema(clock)• Maggioridettagliinseguito…

Dati,InformazioneedElaborazionedell’Informazione 56/108

Page 58: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

BUS– 2/2

1. L’unitàcheiniziailtrasferimento(ingenerelaCPU)forniscel’indirizzo,cheindividuaunivocamenteildato,sullelineedelbusindirizzi,econfiguralelineedelbusdicontrollo,inviandouncomandoaldispositivochecontieneildato(ades.READ,allamemoriaprincipale)

2. Ildatodatrasferireèresodisponibilesulbusdati evienericopiatoneldispositivodestinatario

Dati,InformazioneedElaborazionedell’Informazione 57/108

Page 59: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

ArchitetturadiVonNeumann

Dati,InformazioneedElaborazionedell’Informazione 58/108

Page 60: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaMemoriaCentrale– 1/3

• Lamemoriacentraleconsisteinuninsiemediunitàelementari dimemorizzazione,dettelocazioniocelle (oancheword)

• Latecnologia utilizzataperlamemoriacentraleèquelladeidispositiviasemiconduttori,chelafannoapparirecomeunamatricedibit (simboli0 e1)• Ognibitèpresentecomestato(altoobasso)ditensione

Dati,InformazioneedElaborazionedell’Informazione 59/108

Page 61: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaMemoriaCentrale– 1/3

• Lamemoriacentraleconsisteinuninsiemediunitàelementari dimemorizzazione,dettelocazioniocelle (oancheword)

• Latecnologia utilizzataperlamemoriacentraleèquelladeidispositiviasemiconduttori,chelafannoapparirecomeunamatricedibit• Ognibitèpresentecomestato(altoobasso)ditensione

Ciascunacella nellamemoriaèindividuatadaunindirizzo

Dati,InformazioneedElaborazionedell’Informazione 60/108

Page 62: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaMemoriaCentrale– 2/3• Centrale

• Indica l’importante ruolo che essa svolge nell’ambito dell’Architetturadi Von Neumann

• È la memoria collegata alla CPU tramite bus, che contienedati e programmi attualmente utilizzati o in esecuzione• La CPU legge e scrive dati ed istruzioni dalla/sulla memoria centrale

• È detta memoria ad accesso casuale o Random AccessMemory (RAM) perché qualsiasi cella può essereletta/scritta in un tempo mediamente costante

Dati,InformazioneedElaborazionedell’Informazione 61/108

Page 63: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaMemoriaCentrale– 3/3• Lecaratteristichefondamentalidellamemoriacentralesono• Accessodirettoalleinformazioni• Velocitàelevata• Volatilità: quandoilcomputervienespento,idatiediprogrammipresentiinmemoriavengonocancellati

• Altritipidimemoriesonodettepersistenti (memoriedimassaosecondarie)• Mantengonoidatianchesenzal’alimentazioneelettrica

• Maggioridettagliinseguito…

Dati,InformazioneedElaborazionedell’Informazione 62/108

Page 64: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

ArchitetturadiVonNeumann

Dati,InformazioneedElaborazionedell’Informazione 63/108

Page 65: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Elaborazione• L’elaborazionenellamacchinadiVonNeumann èsvoltadallaCentralProcessingUnit(CPU)• DettaancheProcessore

• Leistruzioni diunprogrammacorrispondonoadoperazionielementari dielaborazione

• Adesempio• Operazioniaritmetiche• Operazionirelazionali(confrontotradati)• Operazionisucaratterievaloridiverità• Altreoperazioninumeriche

Dati,InformazioneedElaborazionedell’Informazione 64/108

Page 66: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaCPU– 1/2• LaCentralProcessingUnit (oCPU)èl’unitàcentraledielaborazione• Esegueleistruzionideiprogrammieneregolailflusso• Esegueicalcoli

• LaCPUèundispositivosincrono,regolatodaunasortadi“orologio”(oclock),chestabiliscequanteistruzionialsecondoessapuòeseguire• Allaricezionediunimpulsodiclockèeseguitaunanuovaistruzione• LaCPUlavoraaN GHz• SegueunritmodiNmiliardidiimpulsialsecondo

• Ades.3GHzà 3miliardidiimpulsialsecondo

Dati,InformazioneedElaborazionedell’Informazione 65/108

Page 67: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaCPU– 2/2• Lafrequenzadiclock determinalavelocitàdielaborazionedelcomputer• Piùaltaèlafrequenzadiclock,maggioreèlavelocitàdielaborazione

• Lavelocitàelapotenzadiuncomputerdipendonoanchedallalarghezzadelbus• Quantitàdidaticheilprocessoreèingradodiricevereedelaboraresimultaneamente

Dati,InformazioneedElaborazionedell’Informazione 66/108

Page 68: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaCPU– ALU• LaCPU ècostituitadatreelementifondamentali

ALU CU

PC

IR

registriContatore di programma

(Program Counter)

Registro Istruzione(Instruction Register)BUS

BIUBus Interface Unit

Dati,InformazioneedElaborazionedell’Informazione 67/108

Page 69: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaCPU– ALU• LaCPU ècostituitadatreelementifondamentali

• UnitàAritmetico-Logica(ALU)

ALU CU

PC

IR

registriContatore di programma

(Program Counter)

Registro Istruzione(Instruction Register)BUS

BIUBus Interface Unit

Dati,InformazioneedElaborazionedell’Informazione 68/108

Page 70: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaCPU– ALU• LaALU(Arithmetic-Logic Unit),dettaancheUnitàAritmetico-Logica,sioccupadieseguireoperazioniaritmeticheelogichesu2operandi

• Oltrealrisultatodell’operazionestessa,laALUpuòprodurreulterioriinformazioni• IlrisultatoèZero,sièverificatounOverflow,etc.

ALU ResultZero

Overflow

a

b

ALU operation

C arryOut

Dati,InformazioneedElaborazionedell’Informazione 69/108

Page 71: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaCPU– Registri• LaCPU ècostituitadatreelementifondamentali

• UnitàAritmetico-Logica(ALU)• Registri

ALU CU

PC

IR

registriContatore di programma

(Program Counter)

Registro Istruzione(Instruction Register)BUS

BIUBus Interface Unit

Dati,InformazioneedElaborazionedell’Informazione 70/108

Page 72: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaCPU– Registri• Iregistri sonodispositividimemorizzazione checonsentonounaccessomoltoveloce aidaticontenuti• Hannodimensioniprefissate

• Alcuniregistrihannofunzionispecifiche(ProgramCounter - PCocontatorediprogramma)• Indicalaprossimaistruzionedaeseguire

ALU CU

PC

IR

registriContatore di programma

(Program Counter)

Registro Istruzione(Instruction Register)BUS

BIUBus Interface Unit

Dati,InformazioneedElaborazionedell’Informazione 71/108

Page 73: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaCPU– Registri• Iregistri sonodispositividimemorizzazione checonsentonounaccessomoltoveloce aidaticontenuti• Hannodimensioniprefissate

• Alcuniregistrihannofunzionispecifiche(ProgramCounter - PCocontatorediprogramma;Instruction Register – IRoregistroistruzione)• Immagazzinal'istruzioneinfasedielaborazione

ALU CU

PC

IR

registriContatore di programma

(Program Counter)

Registro Istruzione(Instruction Register)BUS

BIUBus Interface Unit

Dati,InformazioneedElaborazionedell’Informazione 72/108

Page 74: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaCPU– Registri• Lo stato della CPU è rappresentato dalle informazionimemorizzate negli opportuni registri• Dati da elaborare (contenuti nei registri dati)• Istruzione da eseguire (nel registro istruzioni)• Indirizzo in memoria della prossima istruzione da eseguire (nelprogram counter)

• Eventuali anomalie o eventi verificatisi durante l’elaborazione (neiregistri di stato o flag)

Dati,InformazioneedElaborazionedell’Informazione 73/108

Page 75: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaCPU– Unità di Controllo• LaCPU ècostituitadatreelementifondamentali

• UnitàAritmetico-Logica(ALU)• Registri• UnitàdiControllo(CU)

ALU CU

PC

IR

registriContatore di programma

(Program Counter)

Registro Istruzione(Instruction Register)BUS

BIUBus Interface Unit

Dati,InformazioneedElaborazionedell’Informazione 74/108

Page 76: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaCPU– Unità di Controllo• Ilcoordinamentotralevariepartidelcalcolatoreèsvoltodall’unitàdicontrollo(CU)• Èunacomponentedell’unitàcentraledielaborazione• Ognicomponentedalcalcolatoreeseguesololeazionicheglivengonorichiestedall’unitàdicontrollo

• Ilcontrolloconsistenelcoordinamentodell’esecuzionetemporaledelleoperazioni• Siainternamenteall’unitàdielaborazionesianeglialtrielementifunzionali

Dati,InformazioneedElaborazionedell’Informazione 75/108

Page 77: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LaCPU– Unità di Esecuzione• LaCPU ècostituitadatreelementifondamentali

• UnitàAritmetico-Logica(ALU)• Registri• UnitàdiControllo(CU)

ALU CU

PC

IR

registriContatore di programma

(Program Counter)

Registro Istruzione(Instruction Register)BUS

BIUBus Interface Unit

UnitàdiEsecuzione(EU)

Dati,InformazioneedElaborazionedell’Informazione 76/108

Page 78: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Istruzioni Basedella CPU– 1/2• Istruzioni dibaseeseguitedallaALU

• Somma (dacuisottrazione)

• Scorrimento (shift)

• Operazionilogiche• Operazionidiconfronto

(dacuimoltiplicazioneedivisione)

Dati,InformazioneedElaborazionedell’Informazione 77/108

Page 79: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Istruzioni Basedella CPU– 2/2• Operazionidiaccessoallamemoria(Non eseguitedallaALU)• Trasferimentodiundatodaunalocazionedimemoriaadun’altra

• Trasferimentoda• Memoriaà RegistrodellaCPU

• RegistrodellaCPUà Memoria

Dati,InformazioneedElaborazionedell’Informazione 78/108

Page 80: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

ComesiEseguonoiProgrammi?• Programma: sequenza di istruzioni da eseguire per ottenere lasoluzione ad una data classe di problemi

• Il processore esegue le istruzioni di un programma una alla volta, insequenza• Estrae le istruzioni dalla memoria• Le interpreta• Le esegue una dopo l’altra

• Il processore esegue ogni istruzione mediante la seguente sequenza dioperazioni, detta ciclo di istruzione o ciclo macchina1. Estrazione di un’istruzione: fase di fetch2. Interpretazione di un’istruzione: fase di decode3. Esecuzione dell’istruzione: fase di execute

Dati,InformazioneedElaborazionedell’Informazione 79/108

Page 81: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

CicloFetch-Decode-Execute – 1/3

Dati,InformazioneedElaborazionedell’Informazione 80/108

Page 82: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

CicloFetch-Decode-Execute – 2/3• La CPU eseguire solo istruzioni codificate in linguaggio macchina, mediante ilciclo Fetch-Decode-Execute1. Prendi l’istruzione corrente dalla memoria (individuata dal contenuto del PC).

Salvala nell’IR (Instruction Register) e contemporaneamente incrementa il PC inmodo che contenga l’indirizzo dell’istruzione successiva (fetch)

2. Determina il tipo di istruzione da eseguire (decode)• Se l’istruzione usa dati presenti in memoria, determinane la posizione• Carica tali dati nei registri della CPU

3. Esegui l’istruzione (execute)4. Torna al punto 1 ed inizia a eseguire l’istruzione successiva

CU

IR

PC

memoriaBUS

Istruzione 1Istruzione 2Istruzione 3

02AD77F2

02AD77F2

Segnali di controllo(ALU, Registri, etc.)

Fasedifetch

Dati,InformazioneedElaborazionedell’Informazione 81/108

Page 83: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

CicloFetch-Decode-Execute – 3/3

Dati,InformazioneedElaborazionedell’Informazione 82/108

Quando si applica la corrente elettricaal calcolatore viene attivata una fasedi bootstrap, dove il ciclo vieneinizializzato.

Viene avviata l’esecu-zione di unprogramma iniziale in ROM (nonvolatile) assegnando un valore inizialeopportuno a PC.

Page 84: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Linguaggio(oCodice)Macchina• Definizione

• InsiemediistruzionieseguitedirettamentedallaCPU

• Ogniistruzionesvolgeuncompitospecifico• Istruzionipiuttostorudimentali,codificateinbinario

• Ilconcettoditipodidatoèquasiassente• Ilnumerodioperandièlimitato(ingenerenonpiùdidue)• Ilnumerodioperazioniprevisteèridotto• Ognitipodiprocessoreèingradodieseguireunnumerolimitatodiistruzioni

• Combinandoinmododiversosequenzeanchemoltolunghediistruzioni(iprogrammi)sipuòistruirel’elaboratoreafaretantissimecose,completamentediverse

Dati,InformazioneedElaborazionedell’Informazione 83/108

Page 85: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

IlLinguaggioMacchina• Un programma in esecuzione risiede nella memoriacentrale• È rappresentato da una serie di numeri binari che codificano leistruzioni eseguibili dalla CPU

• Il programma non è quindi distinguibile dai dati osservandoil contenuto della memoria• Le istruzioni sono individuate dai valori assunti dal registro PCdurante l’esecuzione del programma

0000000010100001000000000001100000000000100011100001100000100001100011000110001000000000000000001000110011110010000000000000010010101100111100100000000000000000

PC

Dati,InformazioneedElaborazionedell’Informazione 84/108

Page 86: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

IlSetdiIstruzioniMacchina• L’insiemedelleistruzionieseguibilielarelativacodificasonogeneralmentediversepermodellidiversidiprocessore

• Lecategoriediistruzioninormalmentedisponibilisono• Trasferimentodati

• Spostanodatitraregistri,memoriaprincipaleedispositividiingresso/uscita(I/O)

• Aritmetico-logiche• EseguonoicalcolinellaALU

• Salti(condizionatieincondizionati)• Prendonodecisioniealteranolanormaleesecuzionesequenzialedelleistruzioni

Dati,InformazioneedElaborazionedell’Informazione 85/108

Page 87: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

EsempiodiProgrammainLinguaggioMacchina0100000000010000 leggi un valore in ingresso e ponilo nella cella numero 16 (variabile x)0100000000010001 leggi un valore e ponilo nella cella numero 17 (variabile y)0100000000010010 leggi un valore e ponilo nella cella numero 18 (variabile z)0100000000010011 leggi un valore e ponilo nella cella numero 19 (variabile r)0000000000010000 carica il registro A con il contenuto della cella 160001000000010001 carica il registro B con il contenuto della cella 170110000000000000 somma i contenuti dei dei registri A e B0010000000010100 copia il contenuto del registro A nella cella 20 (risultato, variabile s)0000000000010010 carica il registro A con il contenuto della cella 180001000000010011 carica il registro B con il contenuto della cella 190110000000000000 somma i contenuti dei registi A e B0001000000010100 carica il registro B con il contenuto della cella 201000000000000000 moltiplica i contenuti dei registri A e B0010000000010100 copia il contenuto del registro A nella cella numero 200101000000010100 scrivi in output il contenuto della cella numero 201101000000000000 arresta l’esecuzione (HALT)……………………… spazio per la variabile x (cella 16)……………………… spazio per la variabile y (cella 17)……………………… spazio per la variabile z (cella 18)……………………… spazio per la variabile r (cella 19)……………………… spazio per la variabile s (cella 20)

Dati,InformazioneedElaborazionedell’Informazione 86/108

Page 88: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

DatieIstruzioni• Datieistruzionidiunprogrammasonocodificatiinformabinaria,cioèmediantesequenzefinitedibit

• Un’istruzione codificatasicomponedidueparti• CodiceOperativo(CO)• Unoopiùoperandi(Op.i)

Istruzioneà

Dati,InformazioneedElaborazionedell’Informazione 87/108

E. Ardizzone & I. Infantino - Appunti per il corso di Fondamenti di Informatica 5

Dati e istruzioni di programma sono codificate in forma binaria, cioè mediante sequenze finite di bit.

Una istruzione codificata si compone di due parti: il codice operativo e uno o più operandi:

Funzionamento della macchina di Von Neumann

CO Op. 1 Op. n

Il codice operativo specifica, secondo una convenzione dipendente dalla specifica macchina, l’istruzione da eseguire. Per ogni macchina esistono tanti codici operativi differenti quante sono le istruzioni presenti nell’insieme (set) delle istruzioni che la macchina è in grado di interpretare ed eseguire.

Gli operandi contengono, ancora in una forma codificata dipendente dalla specifica macchina, le informazioni necessarie a reperire i dati sui quali l’istruzione deve operare.

Il linguaggio macchina è quindi strettamente legato alla architettura della macchina.

Page 89: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

E. Ardizzone & I. Infantino - Appunti per il corso di Fondamenti di Informatica 5

Dati e istruzioni di programma sono codificate in forma binaria, cioè mediante sequenze finite di bit.

Una istruzione codificata si compone di due parti: il codice operativo e uno o più operandi:

Funzionamento della macchina di Von Neumann

CO Op. 1 Op. n

Il codice operativo specifica, secondo una convenzione dipendente dalla specifica macchina, l’istruzione da eseguire. Per ogni macchina esistono tanti codici operativi differenti quante sono le istruzioni presenti nell’insieme (set) delle istruzioni che la macchina è in grado di interpretare ed eseguire.

Gli operandi contengono, ancora in una forma codificata dipendente dalla specifica macchina, le informazioni necessarie a reperire i dati sui quali l’istruzione deve operare.

Il linguaggio macchina è quindi strettamente legato alla architettura della macchina.

DatieIstruzioni• Datieistruzionidiunprogrammasonocodificatiinformabinaria,cioèmediantesequenzefinitedibit

• Un’istruzione codificatasicomponedidueparti• CodiceOperativo(CO)• Unoopiùoperandi(Op.i)

Il codice operativo specifica l’istruzione da eseguire.In ogni architettura è definito un certo insieme diistruzioni (set di istruzioni) con gli associati CO

Istruzioneà

Dati,InformazioneedElaborazionedell’Informazione 88/108

Page 90: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

E. Ardizzone & I. Infantino - Appunti per il corso di Fondamenti di Informatica 5

Dati e istruzioni di programma sono codificate in forma binaria, cioè mediante sequenze finite di bit.

Una istruzione codificata si compone di due parti: il codice operativo e uno o più operandi:

Funzionamento della macchina di Von Neumann

CO Op. 1 Op. n

Il codice operativo specifica, secondo una convenzione dipendente dalla specifica macchina, l’istruzione da eseguire. Per ogni macchina esistono tanti codici operativi differenti quante sono le istruzioni presenti nell’insieme (set) delle istruzioni che la macchina è in grado di interpretare ed eseguire.

Gli operandi contengono, ancora in una forma codificata dipendente dalla specifica macchina, le informazioni necessarie a reperire i dati sui quali l’istruzione deve operare.

Il linguaggio macchina è quindi strettamente legato alla architettura della macchina.

DatieIstruzioni• Datieistruzionidiunprogrammasonocodificatiinformabinaria,cioèmediantesequenzefinitedibit

• Un’istruzione codificatasicomponedidueparti• CodiceOperativo(CO)• Unoopiùoperandi(Op.i)

Gli operandi contengono le informazioninecessarie a reperire i dati sui qualil’istruzione deve operare

Istruzioneà

Dati,InformazioneedElaborazionedell’Informazione 89/108

Page 91: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

DatieIstruzioni• Datieistruzionidiunprogrammasonocodificatiinformabinaria,cioèmediantesequenzefinitedibit

• Un’istruzione codificatasicomponedidueparti• CodiceOperativo(CO)• Unoopiùoperandi(Op.i)

Un’istruzioneèstrettamentelegataall’architetturadellamacchina

Istruzioneà

Dati,InformazioneedElaborazionedell’Informazione 90/108

E. Ardizzone & I. Infantino - Appunti per il corso di Fondamenti di Informatica 5

Dati e istruzioni di programma sono codificate in forma binaria, cioè mediante sequenze finite di bit.

Una istruzione codificata si compone di due parti: il codice operativo e uno o più operandi:

Funzionamento della macchina di Von Neumann

CO Op. 1 Op. n

Il codice operativo specifica, secondo una convenzione dipendente dalla specifica macchina, l’istruzione da eseguire. Per ogni macchina esistono tanti codici operativi differenti quante sono le istruzioni presenti nell’insieme (set) delle istruzioni che la macchina è in grado di interpretare ed eseguire.

Gli operandi contengono, ancora in una forma codificata dipendente dalla specifica macchina, le informazioni necessarie a reperire i dati sui quali l’istruzione deve operare.

Il linguaggio macchina è quindi strettamente legato alla architettura della macchina.

Page 92: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

ArchitetturadiVonNeumann

Dati,InformazioneedElaborazionedell’Informazione 91/108

Page 93: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

InterfaccediI/O• Leperiferiche sonoidispositivicheconsentonoall’elaboratorediscambiareinformazioniconilmondoesterno• VengonoconsiderateappartenentiallamacchinadiVonNeumannsololeinterfaccedicollegamentoversoleperiferiche,mentreleperiferichesonoconsideratecomponentiseparate

Dati,InformazioneedElaborazionedell’Informazione 92/108

Page 94: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Memorizzazione– 1/2• Uncalcolatorememorizza

• Idati,cherappresentanoinformazionidiinteresse• I programmiperl’elaborazionedeidati

• Lamemoriacentrale èl’unitàresponsabiledellamemorizzazionedeidati

• Un’unitàdimemoriafornisceduesoleoperazioni• Memorizzazionediunvalore(scrittura)• Accessoalvalorememorizzato(lettura)

Dati,InformazioneedElaborazionedell’Informazione 93/108

Page 95: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Memorizzazione– 2/2• Lememoriesonodispositiviper“lostoccaggio”delleinformazioni

• Inognielaboratorevisonotretipidimemorie• Registri: contengonoinformazioninecessarieall’elaborazionedellasingolaistruzione

• Memoriacentrale: contienedatieistruzioniattualmenteelaboratidalprocessore

• Memoriedimassa: contengonodatieprogrammichenonsonooggettodielaborazioneimmediata

Dati,InformazioneedElaborazionedell’Informazione 94/108

Page 96: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

CaratteristichedellaMemoria• Iparametrifondamentalichecaratterizzanounamemoriasono

• Modalitàdiaccesso• Permanenzaovolatilitàdeidati• Capacità• Velocitànecessariaperaccedere adunalocazionedimemoria duranteun’operazionediletturaoscrittura• Espressainnanosec,millisec,sec

• Inbaseagliultimidueparametrilememoriesicollocanoadiversilivellidiunagerarchia,chevadamemoriepiùcapientimapiùlente(memoriedimassa)amemoriepiccoleeveloci(registri)

Dati,InformazioneedElaborazionedell’Informazione 95/108

Page 97: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

TipologiediAccessoalleMemorie

• Accessosequenziale• Primadileggereunacellaènecessarioleggeretuttequellechelaprecedono

• Accessodiretto• Datol’indirizzodiunacellaneèpossibilel’accessoimmediato

• Accessomisto• Lecellesonoorganizzateinblocchicostituitidapiùcelle,percuisihaaccessodirettoaiblocchiedaccessosequenzialeallecelleall’internodeiblocchi

Dati,InformazioneedElaborazionedell’Informazione 96/108

Page 98: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

GerarchiediMemoriaRegistridellaCPU

Cachediprimo,secondoeterzolivello

MemoriaCentrale(RAM)

Dischiinterni

Dischiesterni

Capacità, Velocità d’Accesso, Costo

Dati,InformazioneedElaborazionedell’Informazione 97/108

Page 99: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

ArchitetturadiVonNeumann

Dati,InformazioneedElaborazionedell’Informazione 98/108

Page 100: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

LeMemorieSecondarie(odiMassa)

• Ilcalcolatoreèdotatodidispositividimemorizzazionechiamatimemoriesecondarie (omemoriedimassa)• Lalorofunzioneprincipaleègarantirelapersistenzadeidati• Possonoesserefisse (HardDisk)orimovibili (pen driveUSB)• NelmodellodiVonNeumann lememoriedimassasonoinclusetraleperiferiche,poichéfunzionalmenteanalogheaquest’ultimedalpuntodivistadell’interazioneconl’elaboratore

• Pro:capacitàpiùelevate,costoperbyteinferiore• Contro:tempidiaccessopiùlunghidellememoriecentrali

Dati,InformazioneedElaborazionedell’Informazione 99/108

Page 101: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Riassumendo – 1/2• Programmiedatirisiedonoinfilememorizzatiinmemoriasecondaria

• Peressereeseguiti(iprogrammi)eusati(idati)vengonocopiatinellamemoriaprimaria(RAM)

• LaCPUè ingradodieseguireleistruzionidicuisonocompostiiprogrammi

Dati,InformazioneedElaborazionedell’Informazione 100/108

Page 102: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Riassumendo– 2/2

Memoria secondaria(Hard Disk)

programma

programma

Copia il programma ed eventuali dati in RAM

Esegui le istruzioni del programma

CPU

Dati,InformazioneedElaborazionedell’Informazione

dati dati

Memoria centrale(RAM)

101/108

Page 103: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Hardware& Software– 1/5• Uncalcolatoredisolitoèsuddivisoin

• Hardware (LivelloFisico)

• Software (LivelloLogico)

Dati,InformazioneedElaborazionedell’Informazione 102/108

Page 104: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Hardware& Software– 2/5• Uncalcolatoredisolitoèsuddivisoin

• Hardware (LivelloFisico)• Ilterminehardwareindicalastrutturafisicadeidispositivi,costituitadacomponentielettroniciedelettromeccanicichesvolgonospecifichefunzionineltrattamentoenellatrasmissionedelleinformazioni

• Software (LivelloLogico)• Ilterminesoftwareindicaillivellologico(incontrapposizioneconquellofisicodell’hardware),cioèl’insiemedelleistruzionicheconsentonoall’hardwaredisvolgereipropricompiti

Dati,InformazioneedElaborazionedell’Informazione 103/108

Page 105: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Hardware&Software – 3/5

“L’hardware è la parte del computer che puoi prendere a calci; il software quella contro cui

puoi solo imprecare.”

“L’hardware è un attore ed il software una sceneggiatura: l’hardware esegue operazioni diverse a seconda del tipo di software usato.”

Dati,InformazioneedElaborazionedell’Informazione 104/108

Page 106: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Hardware&Software– 4/5

Dati,InformazioneedElaborazionedell’Informazione 105/108

• Hardware

Elaborazione

• Software

Page 107: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Hardware&Software– 5/5

Dati,InformazioneedElaborazionedell’Informazione 106/108

Page 108: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Insintesi• Cosaabbiamovisto

• Glielaboratorisonostrumentiperrisolvere(oaiutarearisolvere)problemibasatisulleinformazioni

• Cosavedremo• Tuttavia1. Devonoessereopportunamentecodificatidatied

informazioni2. Devonoessereimpartite,inmanieraopportuna,le

istruzioniperrisolverecorrettamenteiproblemi

Dati,InformazioneedElaborazionedell’Informazione 107/108

Page 109: Fondamenti di Informatica · Il termine “Informazione” –1/2 •Nei nostri discorsi •Mezzi di informazione •Società dell’informazione •Tecnologie dell’ informazione

Riferimenti• Libroditesto

• Capitolo1• Paragrafo1

• Capitolo2• Paragrafo1

• Capitolo6• Paragrafi1[NOApprofondimento],2[NO6.2.2,6.2.3],3,3.1,3.2,4[NOdettagli],5[NOdettagli]e6[NOdettagli]

Dati,InformazioneedElaborazionedell’Informazione 108/108