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

Post on 18-Jul-2020

1 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

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

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

Information&CommunicationTechnology

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

• Negliultimidecennilecapacitàdeisingolicalcolatorisononotevolmenteaumentategrazieallalorointerconnessioneinrete• Icomputersonodiventatideglistrumentidicomunicazione

• Laconvergenzatralatecnologiadell’informazioneeletelecomunicazionihadatovitaadunadisciplinacheprendeilnomediInformation&Communication Technology(ICT)

Dati,InformazioneedElaborazionedell’Informazione 03/108

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

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

Dati,InformazionieConoscenza

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

• Informazioni• Datimessiinrelazioneconlaproprietàacuiessisiriferiscono

• Conoscenza• Regolechepermettonoditrarrevantaggiodalleinformazioni

Dati,InformazioneedElaborazionedell’Informazione 06/108

AncorasuiDati• Rappresentanolamateriaprimadeltrattamentodell’informazione

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

• Lagestionediquestotipodidatièresapossibiledall’incredibilepotenzaraggiuntadaglielaboratorinell’ultimodecennio

Dati,InformazioneedElaborazionedell’Informazione 07/108

Dato

Dati,InformazioneedElaborazionedell’Informazione 08/108

Informazione

Dati,InformazioneedElaborazionedell’Informazione

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

09/108

Conoscenza

Dati,InformazioneedElaborazionedell’Informazione

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

10/108

LaRealizzazione(parziale)diunSogno

• Disporredielaboratoriautomatici• Macchineingradodicompiereautonomamenteattivitàdielaborazionedell’informazione

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

Dati,InformazioneedElaborazionedell’Informazione 11/108

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.

Elaborazionedell’Informazione

Input OutputElaborazione

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

Dati,InformazioneedElaborazionedell’Informazione 13/108

GliElaboratori(oCalcolatori)Elettronici– 1/2

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

• Adifferenzadeglielettrodomesticisonoprogrammabiliepossonoessereadattatiarisolveremoltitipidiproblemi• Apattochequestipossanotradursiinunnumerofinitodioperazioni

Dati,InformazioneedElaborazionedell’Informazione 14/108

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

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

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

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

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.

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.

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

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

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

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

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

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.

Modellidell’informatica(7/8)

Dati,InformazioneedElaborazionedell’Informazione 27/108

Tabella degli stati

Tabella delle uscite

Modellidell’informatica(7/8)

Dati,InformazioneedElaborazionedell’Informazione 28/108

Rispettoall’automadiMealy,èstatonecessarioaggiungerequalchestatoinpiù.

Modellidell’informatica(7/8)

Dati,InformazioneedElaborazionedell’Informazione 29/108

Tabella degli stati

Tabella delleuscite

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.

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.

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.

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.

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 @

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’.

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.

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 37/108

@ 1 1 1 1 ; 1 1 1 @

T

Operazione:3+2

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 38/108

@ 1 1 1 1 ; 1 1 1 @

T T

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 39/108

@ 1 1 1 1 ; 1 1 1 @

T

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 40/108

@ 1 1 1 1 ; 1 1 1 @

T

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 41/108

@ 1 1 1 1 1 1 1 1 @

TT

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 42/108

@ 1 1 1 1 1 1 1 1 @

T

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 43/108

@ 1 1 1 1 1 1 1 1 @

T T

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 44/108

@ @ 1 1 1 1 1 1 1 @

T T

MacchinadiTuring (4/5)

Dati,InformazioneedElaborazionedell’Informazione 45/108

@ @ @ 1 1 1 1 1 1 @

T T

Risultato:5

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.

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

ArchitetturadiVonNeumann•NotaanchecomemacchinadiVonNeumannomodellodiVonNeumann

•Modelloconcettualediun’architetturadicomputerchepermettedirappresentare,memorizzareedelaborareleinformazioni

•Èilmodellosecondoilqualeèorganizzatalamaggiorpartedeimodernielaboratori

ArchitetturadiVonNeumann

Sottosistema di interfaccia

Sottosistema di memorizzazione

Sottosistema di elaborazione

Connessione/comunicazione

Dati,InformazioneedElaborazionedell’Informazione 48/108

ArchitetturadiVonNeumann:CaratteristicheEssenziali– 1/2• Obiettivo:

• Realizzazionediuncalcolatoreuniversale(generalpurpose)

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

Dati,InformazioneedElaborazionedell’Informazione 49/108

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

• Sequenzialità: istruzionieseguiteinmodostrettamentesequenziale

Dati,InformazioneedElaborazionedell’Informazione 50/108

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

ArchitetturadiVonNeumann

Dati,InformazioneedElaborazionedell’Informazione 52/108

ArchitetturadiVonNeumanninConcreto

Dati,InformazioneedElaborazionedell’Informazione 53/108

BUS di sistema

CPU

tastiera mouse memoria dimassa monitor

Memoria centrale

Periferiche

Trasferimento• Obiettivo: permettereloscambiodiinformazionitralevariecomponentifunzionalidelcalcolatore• Trasferimentodeidatiedelleinformazionidicontrollo

• Duepossibilisoluzioni• Collegareciascunacomponenteconognialtracomponente

• Collegaretuttelecomponentiaununicocanale(bus)

• L’utilizzodiunbusfavoriscelamodularità el’espandibilità delcalcolatore

Dati,InformazioneedElaborazionedell’Informazione 54/108

ArchitetturadiVonNeumann

Dati,InformazioneedElaborazionedell’Informazione 55/108

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

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

Dati,InformazioneedElaborazionedell’Informazione 56/108

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

ArchitetturadiVonNeumann

Dati,InformazioneedElaborazionedell’Informazione 58/108

LaMemoriaCentrale– 1/3

• Lamemoriacentraleconsisteinuninsiemediunitàelementari dimemorizzazione,dettelocazioniocelle (oancheword)

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

Dati,InformazioneedElaborazionedell’Informazione 59/108

LaMemoriaCentrale– 1/3

• Lamemoriacentraleconsisteinuninsiemediunitàelementari dimemorizzazione,dettelocazioniocelle (oancheword)

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

Ciascunacella nellamemoriaèindividuatadaunindirizzo

Dati,InformazioneedElaborazionedell’Informazione 60/108

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

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

• Altritipidimemoriesonodettepersistenti (memoriedimassaosecondarie)• Mantengonoidatianchesenzal’alimentazioneelettrica

• Maggioridettagliinseguito…

Dati,InformazioneedElaborazionedell’Informazione 62/108

ArchitetturadiVonNeumann

Dati,InformazioneedElaborazionedell’Informazione 63/108

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

• Leistruzioni diunprogrammacorrispondonoadoperazionielementari dielaborazione

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

Dati,InformazioneedElaborazionedell’Informazione 64/108

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

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

• Lavelocitàelapotenzadiuncomputerdipendonoanchedallalarghezzadelbus• Quantitàdidaticheilprocessoreèingradodiricevereedelaboraresimultaneamente

Dati,InformazioneedElaborazionedell’Informazione 66/108

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

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

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

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

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

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

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

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

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

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

Istruzioni Basedella CPU– 1/2• Istruzioni dibaseeseguitedallaALU

• Somma (dacuisottrazione)

• Scorrimento (shift)

• Operazionilogiche• Operazionidiconfronto

(dacuimoltiplicazioneedivisione)

Dati,InformazioneedElaborazionedell’Informazione 77/108

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

• Trasferimentoda• Memoriaà RegistrodellaCPU

• RegistrodellaCPUà Memoria

Dati,InformazioneedElaborazionedell’Informazione 78/108

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

CicloFetch-Decode-Execute – 1/3

Dati,InformazioneedElaborazionedell’Informazione 80/108

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

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.

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

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

IlSetdiIstruzioniMacchina• L’insiemedelleistruzionieseguibilielarelativacodificasonogeneralmentediversepermodellidiversidiprocessore

• Lecategoriediistruzioninormalmentedisponibilisono• Trasferimentodati

• Spostanodatitraregistri,memoriaprincipaleedispositividiingresso/uscita(I/O)

• Aritmetico-logiche• EseguonoicalcolinellaALU

• Salti(condizionatieincondizionati)• Prendonodecisioniealteranolanormaleesecuzionesequenzialedelleistruzioni

Dati,InformazioneedElaborazionedell’Informazione 85/108

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

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.

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

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

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.

ArchitetturadiVonNeumann

Dati,InformazioneedElaborazionedell’Informazione 91/108

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

Dati,InformazioneedElaborazionedell’Informazione 92/108

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

Memorizzazione– 2/2• Lememoriesonodispositiviper“lostoccaggio”delleinformazioni

• Inognielaboratorevisonotretipidimemorie• Registri: contengonoinformazioninecessarieall’elaborazionedellasingolaistruzione

• Memoriacentrale: contienedatieistruzioniattualmenteelaboratidalprocessore

• Memoriedimassa: contengonodatieprogrammichenonsonooggettodielaborazioneimmediata

Dati,InformazioneedElaborazionedell’Informazione 94/108

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

TipologiediAccessoalleMemorie

• Accessosequenziale• Primadileggereunacellaènecessarioleggeretuttequellechelaprecedono

• Accessodiretto• Datol’indirizzodiunacellaneèpossibilel’accessoimmediato

• Accessomisto• Lecellesonoorganizzateinblocchicostituitidapiùcelle,percuisihaaccessodirettoaiblocchiedaccessosequenzialeallecelleall’internodeiblocchi

Dati,InformazioneedElaborazionedell’Informazione 96/108

GerarchiediMemoriaRegistridellaCPU

Cachediprimo,secondoeterzolivello

MemoriaCentrale(RAM)

Dischiinterni

Dischiesterni

Capacità, Velocità d’Accesso, Costo

Dati,InformazioneedElaborazionedell’Informazione 97/108

ArchitetturadiVonNeumann

Dati,InformazioneedElaborazionedell’Informazione 98/108

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

Riassumendo – 1/2• Programmiedatirisiedonoinfilememorizzatiinmemoriasecondaria

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

• LaCPUè ingradodieseguireleistruzionidicuisonocompostiiprogrammi

Dati,InformazioneedElaborazionedell’Informazione 100/108

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

Hardware& Software– 1/5• Uncalcolatoredisolitoèsuddivisoin

• Hardware (LivelloFisico)

• Software (LivelloLogico)

Dati,InformazioneedElaborazionedell’Informazione 102/108

Hardware& Software– 2/5• Uncalcolatoredisolitoèsuddivisoin

• Hardware (LivelloFisico)• Ilterminehardwareindicalastrutturafisicadeidispositivi,costituitadacomponentielettroniciedelettromeccanicichesvolgonospecifichefunzionineltrattamentoenellatrasmissionedelleinformazioni

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

Dati,InformazioneedElaborazionedell’Informazione 103/108

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

Hardware&Software– 4/5

Dati,InformazioneedElaborazionedell’Informazione 105/108

• Hardware

Elaborazione

• Software

Hardware&Software– 5/5

Dati,InformazioneedElaborazionedell’Informazione 106/108

Insintesi• Cosaabbiamovisto

• Glielaboratorisonostrumentiperrisolvere(oaiutarearisolvere)problemibasatisulleinformazioni

• Cosavedremo• Tuttavia1. Devonoessereopportunamentecodificatidatied

informazioni2. Devonoessereimpartite,inmanieraopportuna,le

istruzioniperrisolverecorrettamenteiproblemi

Dati,InformazioneedElaborazionedell’Informazione 107/108

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

top related