DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – [email protected]...

60
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Marco D. Santambrogio – [email protected] Ver. aggiornata al 12 Marzo 2014

Transcript of DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – [email protected]...

Page 1: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

1

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

Marco D. Santambrogio – [email protected]. aggiornata al 12 Marzo 2014

Page 2: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

2

Oggi è il 25mo compleanno di chi?Oggi è il 25mo compleanno di chi?

Aiutino: Aiutino: Tim Berners-Lee presenta una proposta per un sistema Tim Berners-Lee presenta una proposta per un sistema informatico distribuito al CERNinformatico distribuito al CERN[http://www.w3.org/History/1989/proposal-msw.html][http://www.w3.org/History/1989/proposal-msw.html]

RispostaRisposta

Page 3: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

3

Oggi è il 25mo compleanno di chi?Oggi è il 25mo compleanno di chi?

Aiutino: Aiutino: Tim Berners-Lee presenta una proposta per un sistema Tim Berners-Lee presenta una proposta per un sistema informatico distribuito al CERNinformatico distribuito al CERN[http://www.w3.org/History/1989/proposal-msw.html][http://www.w3.org/History/1989/proposal-msw.html]

RispostaRisposta

Page 4: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

4

Oggi è il 25mo compleanno di chi?Oggi è il 25mo compleanno di chi?

Aiutino: Aiutino: Tim Berners-Lee presenta una proposta per un sistema Tim Berners-Lee presenta una proposta per un sistema informatico distribuito al CERNinformatico distribuito al CERN[http://www.w3.org/History/1989/proposal-msw.html][http://www.w3.org/History/1989/proposal-msw.html]

RispostaRisposta

Page 5: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

5

• E' un corso molto difficile, a tal punto che quelli degli anni successivi quando sentono il nome del professore sono soliti augurare buona fortuna.

• ho sentito che è un corso impossibile [in diversi che era [in diversi che era “solo difficile”]“solo difficile”]

• Molti sostengono che sia il corso più tosto del semestre...Molti sostengono che sia il corso più tosto del semestre...• L'impresa titanica che rappresenta il riuscire a non essere

rimandati in questo corso

Page 6: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

6

• E' un corso molto difficile, a tal punto che quelli degli anni successivi quando sentono il nome del professore sono soliti augurare buona fortuna.

• ho sentito che è un corso impossibile [in diversi che era [in diversi che era “solo difficile”]“solo difficile”]

• Molti sostengono che sia il corso più tosto del semestre...Molti sostengono che sia il corso più tosto del semestre...• L'impresa titanica che rappresenta il riuscire a non essere

rimandati in questo corso

Page 7: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

7

• E' un corso molto difficile, a tal punto che quelli degli anni successivi quando sentono il nome del professore sono soliti augurare buona fortuna.

• ho sentito che è un corso impossibile [in diversi che era [in diversi che era “solo difficile”]“solo difficile”]

• Molti sostengono che sia il corso più tosto del semestre...Molti sostengono che sia il corso più tosto del semestre...• L'impresa titanica che rappresenta il riuscire a non essere

rimandati in questo corso• Di tutto e di più:( spero che restino leggende, ovviamente!

Page 8: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

8

• E' un corso molto difficile, a tal punto che quelli degli anni successivi quando sentono il nome del professore sono soliti augurare buona fortuna.

• ho sentito che è un corso impossibile [in diversi che era [in diversi che era “solo difficile”]“solo difficile”]

• Molti sostengono che sia il corso più tosto del semestre...Molti sostengono che sia il corso più tosto del semestre...• L'impresa titanica che rappresenta il riuscire a non essere

rimandati in questo corso• Di tutto e di più:( spero che restino leggende, ovviamente!

Page 9: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

9

• E' un corso molto difficile, a tal punto che quelli degli anni successivi quando sentono il nome del professore sono soliti augurare buona fortuna.

• ho sentito che è un corso impossibile [in diversi che era [in diversi che era “solo difficile”]“solo difficile”]

• Molti sostengono che sia il corso più tosto del semestre...Molti sostengono che sia il corso più tosto del semestre...• L'impresa titanica che rappresenta il riuscire a non essere

rimandati in questo corso• Di tutto e di più:( spero che restino leggende, ovviamente! • di questo corso ho sentito dire che è molto impegnativo ma

ricompensa lo studio che richiede

Page 10: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

10

• E' un corso molto difficile, a tal punto che quelli degli anni successivi quando sentono il nome del professore sono soliti augurare buona fortuna.

• ho sentito che è un corso impossibile [in diversi che era [in diversi che era “solo difficile”]“solo difficile”]

• Molti sostengono che sia il corso più tosto del semestre...Molti sostengono che sia il corso più tosto del semestre...• L'impresa titanica che rappresenta il riuscire a non essere

rimandati in questo corso• Di tutto e di più:( spero che restino leggende, ovviamente! • di questo corso ho sentito dire che è molto impegnativo ma

ricompensa lo studio che richiede

Page 11: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

11

• E' un corso molto difficile, a tal punto che quelli degli anni successivi quando sentono il nome del professore sono soliti augurare buona fortuna.

• ho sentito che è un corso impossibile [in diversi che era [in diversi che era “solo difficile”]“solo difficile”]

• Molti sostengono che sia il corso più tosto del semestre...Molti sostengono che sia il corso più tosto del semestre...• L'impresa titanica che rappresenta il riuscire a non essere

rimandati in questo corso• Di tutto e di più:( spero che restino leggende, ovviamente! • di questo corso ho sentito dire che è molto impegnativo ma

ricompensa lo studio che richiede • Il professore è affascinante

Page 12: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

12

• E' un corso molto difficile, a tal punto che quelli degli anni successivi quando sentono il nome del professore sono soliti augurare buona fortuna.

• ho sentito che è un corso impossibile [in diversi che era [in diversi che era “solo difficile”]“solo difficile”]

• Molti sostengono che sia il corso più tosto del semestre...Molti sostengono che sia il corso più tosto del semestre...• L'impresa titanica che rappresenta il riuscire a non essere

rimandati in questo corso• Di tutto e di più:( spero che restino leggende, ovviamente! • di questo corso ho sentito dire che è molto impegnativo ma

ricompensa lo studio che richiede • Il professore è affascinante

Page 13: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

13

Detto terra-terra, mi dicono dalla regia (una regia anch'essa anonima!) che il professor Santambrogio fa delle richieste assurde e che il suo esame è praticamente impossibile. Ma ovviamente sappiamo tutti che sono le solite iperboli della disperazione, no?

Certo!Non vi preoccupate!

Page 14: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

14

Detto terra-terra, mi dicono dalla regia (una regia anch'essa anonima!) che il professor Santambrogio fa delle richieste assurde e che il suo esame è praticamente impossibile. Ma ovviamente sappiamo tutti che sono le solite iperboli della disperazione, no?

Certo!Non vi preoccupate!

Page 15: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

15

[dalla survey]: “Cosa fa questo codice”[dalla survey]: “Cosa fa questo codice”

Direi che è un codice per il lancio di testate nucleari iraniane

Page 16: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

16

Finché non entri nell'ottica non si Finché non entri nell'ottica non si passerà mai. passerà mai.

E inoltre è un esame molto E inoltre è un esame molto soggettivo, gente con la media del soggettivo, gente con la media del 18 lo passa con 29 e viceversa.18 lo passa con 29 e viceversa.

Page 17: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

17

Page 18: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

18

Page 19: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

19

Page 20: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

20

Page 21: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

21

Page 22: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

22

Page 23: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

23

Page 24: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

24

Page 25: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

25

Page 26: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

26

Page 27: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

27

Page 28: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

28

Page 29: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

29

• Informazione e trattamento dell’informazioneInformazione e trattamento dell’informazione• Programmabilità del calcolatore e concetti di hardware e softwareProgrammabilità del calcolatore e concetti di hardware e software• Macchina di von NeumannMacchina di von Neumann• Comunicazione tra esseri umani e calcolatoriComunicazione tra esseri umani e calcolatori

Page 30: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

30

• Significato 1: [informazione = dati + istruzioni]Significato 1: [informazione = dati + istruzioni]insieme dei dati su cui operare e delle istruzioni con cui elaborare tali datiinsieme dei dati su cui operare e delle istruzioni con cui elaborare tali dati▶per esempio, nell’operazione 1+2 sono entità di informazione i numeri 1 e 2 e

l’operatore ‘+’enfasi sulla distinzione tra struttura e descrizione dell’operazioneenfasi sulla distinzione tra struttura e descrizione dell’operazione▶che si scriva “uno più due” o “1+2” l’informazione è la stessa

• Significato 2: [informazione = dati con significato] Significato 2: [informazione = dati con significato] ciò che si ottiene dai dati a cui è stato attribuito un significatociò che si ottiene dai dati a cui è stato attribuito un significato▶per esempio, i numeri 1 e 2 sono semplici dati; diventano entità di informazione solo

quando si stabilisce che si riferiscono, per esempio, a mele o a portaerei enfasi sulla distinzione tra forma e contenutoenfasi sulla distinzione tra forma e contenuto

Page 31: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

31

Le tecnologie di successo sociale producono strumenti utilizzabiliLe tecnologie di successo sociale producono strumenti utilizzabilianche da chi non ne conosce i dettagli di funzionamento,anche da chi non ne conosce i dettagli di funzionamento,grazie alla presenza di un’appropriata grazie alla presenza di un’appropriata interfaccia utenteinterfaccia utente ( (user interfaceuser interface, UI), UI)

Approccio “dall’alto verso il basso” (Approccio “dall’alto verso il basso” (top-downtop-down):):•aprendo il coperchio della scatola si trovano altre scatoleaprendo il coperchio della scatola si trovano altre scatole•si continuano ad aprire coperchi fino a giungere al livello di dettaglio richiestosi continuano ad aprire coperchi fino a giungere al livello di dettaglio richiesto

Approccio “a scatola chiusa” (Approccio “a scatola chiusa” (black boxblack box):):interazione con la scatola (la UI dello strumento) e non con il suo contenutointerazione con la scatola (la UI dello strumento) e non con il suo contenuto•lo strumento è più facilmente usabilelo strumento è più facilmente usabile•ma rischia di essere sotto (e in certi casi anche mal) utilizzatoma rischia di essere sotto (e in certi casi anche mal) utilizzato

e quindi, in certi casi…e quindi, in certi casi…

Page 32: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

32

• Molti strumenti sono stati progettati e realizzati per trattare Molti strumenti sono stati progettati e realizzati per trattare informazione:informazione:▶le matite servono per scrivere

(non per trasferire grafite su carta)▶i violini servono per suonare

(non per produrre onde acustiche)• A differenza di questi, i calcolatori sono dispositivi programmabiliA differenza di questi, i calcolatori sono dispositivi programmabili

• Ma cosa significa programmabile?Ma cosa significa programmabile?

Page 33: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

33

le melenel cesto

le mele nel

cesto

Ma l’informazione può essere più che indicale…Ma l’informazione può essere più che indicale…

Page 34: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

34

• La programmabilità di un dispositivoLa programmabilità di un dispositivoattiene alle modalità con cuiattiene alle modalità con cuiesso gestisce informazioneesso gestisce informazione

• Per esempio, per risolvere questo problema,Per esempio, per risolvere questo problema,si può:si può:▶ provare e riprovare

(= operare direttamente sul sistema da trasformare)▶ fare i conti a mente

(= operare senza un supporto fisico)▶ fare i conti con carta e penna

(= operare con supporti passivi)▶ fare i conti con una calcolatrice

(= operare con supporti “rigidi”)▶ oppure …

Page 35: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

35

Per gestire informazione, si opera su dati mediante istruzioni:Per gestire informazione, si opera su dati mediante istruzioni:

Page 36: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

36

• Ogni essere umano elabora quotidianamente informazioneOgni essere umano elabora quotidianamente informazionein grande quantità senza usare strumenti particolarmente sofisticatiin grande quantità senza usare strumenti particolarmente sofisticati

• Due situazioni possono rendere difficile questa attività:Due situazioni possono rendere difficile questa attività:▶quando il problema supera un certo grado di complessità▶quando è necessario elaborare informazione con particolare rapidità

• Nel corso della storia, l’uomo ha creato molti strumentiNel corso della storia, l’uomo ha creato molti strumentiin grado di supportarlo nell’elaborazione dell’informazione:in grado di supportarlo nell’elaborazione dell’informazione:▶strumenti formali (per es. il sillogismo) che consentono di trattare

entità di informazione dotate di una certa struttura,ricavandone delle conclusioni per via puramente elaborativa

▶strumenti materiali (modelli in scala, galleria del vento, …), che “materializzando”le entità di informazione su cui si opera ne facilitano l’elaborazione

Page 37: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

37

• Blaise Pascal (1623-1662)Blaise Pascal (1623-1662)dispositivo meccanico (ingranaggi azionati da una manovella) per l’esecuzione dispositivo meccanico (ingranaggi azionati da una manovella) per l’esecuzione di somme e sottrazionidi somme e sottrazioni

• Gottfried Wilhelm von Leibniz (1646-1716)Gottfried Wilhelm von Leibniz (1646-1716)introduce anche moltiplicazioni e divisioniintroduce anche moltiplicazioni e divisioni(calcolatrice a quattro funzioni)(calcolatrice a quattro funzioni)

• Charles Babbage (1792-1871)Charles Babbage (1792-1871)progetta e realizza un “progetta e realizza un “difference enginedifference engine””▶ calcola tabelle di numeri utili per la navigazione▶ unicounico algoritmo: polinomiale alle differenze finitepolinomiale alle differenze finite▶ output: forifori su una piastra di rame

(schede perforate)

Page 38: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

38

• Charles Babbage (1792-1871)Charles Babbage (1792-1871)macchina programmabile: macchina programmabile: analytical engineanalytical engine▶Formata da quattro parti:

storestore (memoria: 1000 celle × 50 cifre) millmill (unità di calcolo: 4 operazioni + trasferimento dati) inputinput (lettore schede) outputoutput (perforatore schede)

▶Con istruzioni di controlloistruzioni di controllo per cambiare il flusso di esecuzione a seconda del valore positivo o negativo di un numero

▶Nasce il ruolo del programmatore: Ada Augusta LovelaceAda Augusta Lovelace▶Troppo avanzata per la tecnologia del tempo: troppi errori hardware (ruote dentate di precisione)

Page 39: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

39

• Konrad ZuseKonrad Zuse (Germania, anni ’30 e ’40) (Germania, anni ’30 e ’40)▶ Realizza macchine calcolatrici automatiche basate su relè elettromagneticirelè elettromagnetici▶ Distrutte dal bombardamento di Berlino del 1944

• John Atanasoff John Atanasoff (Iowa State College, anni ’30)(Iowa State College, anni ’30)▶ Macchina basata sull’aritmetica binariaaritmetica binaria▶ Memoria basata su condensatoricondensatori rinfrescati periodicamente▶ Troppo avanzata per la tecnologia disponibile (problemiproblemi HWHW)

• George Stibbitz George Stibbitz (Bell Labs, anni ’30)(Bell Labs, anni ’30)▶ Calcolatore più primitivo rispetto a quello di Atanasoff, ma funzionantefunzionante

(presentato a una conferenza nel 1940)

• Howard Aiken Howard Aiken (Harvard, anni ’40)(Harvard, anni ’40)▶ Riprende il lavoro di Babbage e lo implementa sfruttando la tecnologia dei relè relè

elettromagneticielettromagnetici. Nel 1944 completa il Mark I: un’istruzione eseguita ogni 6 secondi input e output su/da nastro di carta perforato

Page 40: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

40

• Negli anni ’40 si sviluppa una nuova tecnologia: le Negli anni ’40 si sviluppa una nuova tecnologia: le valvole valvole termoionichetermoioniche rendono obsoleti i rendono obsoleti i relè elettromagneticirelè elettromagnetici

• COLOSSUSCOLOSSUS (Inghilterra 1943)(Inghilterra 1943)▶Primo calcolatore digitale elettronico▶Usato per decifrare i messaggi segreti tedeschi▶Segreto militare per 30 anni, perciò ininfluenteininfluente

• ENIACENIAC (Mauchley ed Eckert - USA 1946)(Mauchley ed Eckert - USA 1946)▶Electronic Numerical Integrator And ComputerElectronic Numerical Integrator And Computer▶Composto da 1800018000 valvole e 15001500 relè per un peso complessivo di 30 t30 t

e un consumo di 140 kw140 kw

Page 41: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

41

Page 42: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

42

• Partecipa al progetto ENIACPartecipa al progetto ENIAC

• Due intuizioni fondamentali:Due intuizioni fondamentali:▶memorizzare i programmi in forma digitaleforma digitale nella stessa memoria dei dati

per rendere più semplice la programmazione(rispetto all’utilizzo di cavi e interruttori)

▶utilizzare l’aritmetica binarial’aritmetica binaria invece di quella decimale(due valvole per bit invece di dieci per cifra)

• Il suo progetto (Il suo progetto (macchina di von Neumannmacchina di von Neumann) è ancora oggi) è ancora oggialla base di quasi tutti i calcolatori digitalialla base di quasi tutti i calcolatori digitali

Page 43: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

43

• Un calcolatore deve essere in grado di:Un calcolatore deve essere in grado di:▶eseguire istruzioni su dati▶controllare il flusso dell’esecuzione▶memorizzare i dati su cui operare▶memorizzare successioni di istruzioni▶interagire con gli utenti e con eventuali altri sistemi

Sottosistemadi interfaccia

Sottosistemadi memorizzazione

Sottosistemadi elaborazione

Sottosistema di interconnessione

Ha due funzioni:1. eseguire le istruzioni2. controllare il flusso

dell’esecuzione

Comunica con utentio con altri dispositivi

Memorizza datie istruzioni

Page 44: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

44

• Nel 1951, Nel 1951, finanziato dal Marshall Plan, il Prof. Dadda porta finanziato dal Marshall Plan, il Prof. Dadda porta al Politecnico un CRC102Aal Politecnico un CRC102A• Il primo calcolatore elettronica in Italia.

• Lavori pioneristici nel campo del calcolo numerico, dei Lavori pioneristici nel campo del calcolo numerico, dei linguaggi di programmazione e nelle architetture hardwarelinguaggi di programmazione e nelle architetture hardware• CRC102A, 1954• AICA (founder), 1961• Dadda Multiplier, 1965

Page 45: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

45

rete

interfacciautente

automazione

ambiente da ambiente da controllarecontrollare

sensori

calcolatore calcolatore localelocale

calcolatore calcolatore remotoremoto

attuatori

Page 46: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

46

1. Input1. Input::dati e istruzionidati e istruzioni

3. Output3. Output::dati (risultati dati (risultati

dell’elaborazione)dell’elaborazione)

2. Elaborazione2. Elaborazione

e quindi, il calcolatore si può intendere come una black box:e quindi, il calcolatore si può intendere come una black box:

calcolatoreInputInput OutputOutput

Page 47: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

47

Ricevendo una richiesta dall’utente, il calcolatore svolge in successioneRicevendo una richiesta dall’utente, il calcolatore svolge in successionedue attività:due attività:

• controlla di essere in grado di interpretare il comandocontrolla di essere in grado di interpretare il comando, cioè di riconoscere il , cioè di riconoscere il comando come corretto e corrispondente a un’azione che è in grado di eseguirecomando come corretto e corrispondente a un’azione che è in grado di eseguire

• se il controllo ha dato esito positivo, se il controllo ha dato esito positivo, esegue l’azione associata al comandoesegue l’azione associata al comando e, e, quando richiesto, presenta il risultato all’utentequando richiesto, presenta il risultato all’utente

Invece di inviare al calcolatore un comando per volta, l’utente può scegliereInvece di inviare al calcolatore un comando per volta, l’utente può sceglieredi creare una successione di comandi (= programma) e inviarla al calcolatore,di creare una successione di comandi (= programma) e inviarla al calcolatore,che autonomamente è in grado di interpretare ed eseguire il programma stesso,che autonomamente è in grado di interpretare ed eseguire il programma stesso,un’istruzione per voltaun’istruzione per volta

Page 48: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

48

L’utente-programmatore e il calcolatoreL’utente-programmatore e il calcolatoredevono parlare uno stesso linguaggiodevono parlare uno stesso linguaggio

Un’opzione potrebbe essere di “insegnare al calcolatore” a comprendereUn’opzione potrebbe essere di “insegnare al calcolatore” a comprendere(= interpretare ed eseguire comandi espressi in) una lingua storico-naturale come (= interpretare ed eseguire comandi espressi in) una lingua storico-naturale come l’italiano o l’inglesel’italiano o l’inglese

• Vantaggi:Vantaggi:▶ lingue semanticamente ricche, e quindi sicuramente in grado di esprimere i comandi▶ lingue già note all’utente

• Svantaggi:Svantaggi:▶ lingue semanticamente ricche, e quindi a rischio di ambiguità▶ lingue complesse da insegnare / imparare

Page 49: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

49

Comando: “nella fraseComando: “nella frasel'informatica, che in inglese è detta 'computer-science',l'informatica, che in inglese è detta 'computer-science',

è interessante anche se difficileè interessante anche se difficilemetti in grassetto la parola metti in grassetto la parola XX””• XX: “è” : “è” ambiguo: quale delle due “è”? ambiguo: quale delle due “è”?• XX: “in decima posizione” : “in decima posizione” ambiguo: “computer-science” conta come una o due parole? ambiguo: “computer-science” conta come una o due parole?

Comando: “se la condizione A è vera esegui l’istruzione B e poi esegui l’istruzione C”Comando: “se la condizione A è vera esegui l’istruzione B e poi esegui l’istruzione C”• ambiguo: C deve essere eseguito comunque o solo se A è vera?ambiguo: C deve essere eseguito comunque o solo se A è vera?

Page 50: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

50

Un’opzione alternativa:Un’opzione alternativa:• creare un linguaggio “di programmazione”,creare un linguaggio “di programmazione”,

dedicato alla comunicazione con il calcolatorededicato alla comunicazione con il calcolatore• Vantaggi:Vantaggi:

▶ linguaggio progettato specificamente, e quindi efficiente▶ linguaggio non ambiguo

• Svantaggi:Svantaggi:▶ linguaggio formalizzato, e quindi strutturalmente diverso dalle lingue storico-naturali▶ linguaggio non noto all’utente

Page 51: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

51

Comando: “se la condizione A è vera esegui l’istruzione B e poi esegui l’istruzione C”Comando: “se la condizione A è vera esegui l’istruzione B e poi esegui l’istruzione C”• ambiguo: C deve essere eseguito comunque o solo se A è vera?ambiguo: C deve essere eseguito comunque o solo se A è vera?

Lo stesso comando viene riscritto in un linguaggio di programmazione si disambigua:Lo stesso comando viene riscritto in un linguaggio di programmazione si disambigua:

if(A) { B;}C;

if(A) { B; C;}

se A è vero esegui B;se A è vero esegui B;in ogni caso quindi esegui l’istruzione Cin ogni caso quindi esegui l’istruzione C

se A è vero esegui sia B sia Cse A è vero esegui sia B sia C

Page 52: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

52

Sebbene si consideri abitualmente che oggetto del calcolo sono numeri,Sebbene si consideri abitualmente che oggetto del calcolo sono numeri,i calcolatori operano anche su dati non numerici, come testi, immagini, musica…i calcolatori operano anche su dati non numerici, come testi, immagini, musica…Un problema di elaborazione di dati non numerici è riconducibile a calcolo numericoUn problema di elaborazione di dati non numerici è riconducibile a calcolo numericose per prima cosa i dati vengono codificati nella forma di numerise per prima cosa i dati vengono codificati nella forma di numeri

Per esempio, un testo può essere convertito in una successione di numeri grazie al Per esempio, un testo può essere convertito in una successione di numeri grazie al Codice ASCII: spazio Codice ASCII: spazio 32; ‘A’ 32; ‘A’ 65; 65; ‘B’ ‘B’ 66; …; ‘a’ 66; …; ‘a’ 97; ‘b’ 97; ‘b’ 98; … 98; …

e quindi: “ciao mondo” e quindi: “ciao mondo” 99 105 97 111 32 109 111 110 100 111 99 105 97 111 32 109 111 110 100 111

Data questa codifica, un problema come:Data questa codifica, un problema come:trasformare una frase scrivendo con l’iniziale maiuscola tutte le parole che la compongonotrasformare una frase scrivendo con l’iniziale maiuscola tutte le parole che la compongono(per cui “ciao mondo” dovrebbe diventare “Ciao Mondo”)(per cui “ciao mondo” dovrebbe diventare “Ciao Mondo”)è effettivamente un problema di calcoloè effettivamente un problema di calcolo

Page 53: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

53

Se il linguaggio di programmazione adottato contiene un’istruzione Se il linguaggio di programmazione adottato contiene un’istruzione words_uppercase()words_uppercase(),,il problema si risolve semplicemente: il problema si risolve semplicemente: words_uppercase(“ciao mondo”)words_uppercase(“ciao mondo”)Altrimenti, è il programmatore a dover “scomporre” il problema in sottoproblemiAltrimenti, è il programmatore a dover “scomporre” il problema in sottoproblemipiù semplici, per esempio:più semplici, per esempio:1. identifica le parole da cui la frase è costituita1. identifica le parole da cui la frase è costituita2. per ogni parola, metti il suo primo carattere in maiuscolo2. per ogni parola, metti il suo primo carattere in maiuscolo

Data la successione: Data la successione: 99 105 97 111 32 109 111 110 100 11199 105 97 111 32 109 111 110 100 111•la prima istruzione corrisponde a individuare nella successione le sotto-successioni di la prima istruzione corrisponde a individuare nella successione le sotto-successioni di numeri separate dal numero 32numeri separate dal numero 32•la seconda istruzione corrisponde sottrarre 32 al primo elemento di ogni sotto-successione,la seconda istruzione corrisponde sottrarre 32 al primo elemento di ogni sotto-successione,

Una volta codificati numericamente i dati in ingresso, il problema viene dunque risolto Una volta codificati numericamente i dati in ingresso, il problema viene dunque risolto mediante semplici istruzioni come “se … è uguale a … allora …”, “somma … a …”, e così viamediante semplici istruzioni come “se … è uguale a … allora …”, “somma … a …”, e così via

Page 54: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

54

Non ogni problema ammette una soluzione calcolabileNon ogni problema ammette una soluzione calcolabile

•Quali problemi ammettono una soluzione calcolabile?Quali problemi ammettono una soluzione calcolabile?•Esistono problemi calcolabili che i calcolatori non sono in grado di risolvere?Esistono problemi calcolabili che i calcolatori non sono in grado di risolvere?•Esistono problemi che solo certi calcolatori sono in grado di risolvere?Esistono problemi che solo certi calcolatori sono in grado di risolvere?cioè: esistono tipi diversi di calcolatori in relazione alla loro capacitàcioè: esistono tipi diversi di calcolatori in relazione alla loro capacitàdi risolvere problemi?di risolvere problemi?

Page 55: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

55

IpotesiIpotesi: il calcolo è una trasformazione di dati,: il calcolo è una trasformazione di dati,in cui l’output è determinato univocamente dall’input attraverso una funzione:in cui l’output è determinato univocamente dall’input attraverso una funzione:

ffinputinput output = f(input)output = f(input)

Per esempio, Per esempio, 1+2*31+2*3 e e 4+5*64+5*6 sono due casi particolari della stessa funzione sono due casi particolari della stessa funzione f(x,y,z)=x+y*zf(x,y,z)=x+y*z

IpotesiIpotesi: le funzioni complesse possono essere scomposte: le funzioni complesse possono essere scompostecome successioni di funzioni più semplicicome successioni di funzioni più semplici

Per esempio:Per esempio:

x,y,zx,y,z x+y*zx+y*z

ff

**

++

yy

zz

xx

Page 56: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

56

Un sistema di calcolo Un sistema di calcolo moltomolto semplice: semplice:• un nastro organizzato in celle in ognuna delle quali è scritta una barra o nullaun nastro organizzato in celle in ognuna delle quali è scritta una barra o nulla

e con codifica “unaria” (e con codifica “unaria” (11 “ “ // ”; ”; 22 “ “ //// ”; ”; 33 “ “ ////// ”; … ”; …• un sistema di lettura e scrittura che opera in base a regole della forma:un sistema di lettura e scrittura che opera in base a regole della forma:

se sei nello stato ... e nella cella hai letto ...,se sei nello stato ... e nella cella hai letto ...,allora nella cella scrivi ..., passa nello stato ... allora nella cella scrivi ..., passa nello stato ...

e spostati nella cella ... e spostati nella cella ...

/ / / / / ……Per esempio, il nastro:Per esempio, il nastro:

codifica i numeri codifica i numeri 22 e e 33, e il calcolo della funzione x+y si può realizzare in questo modo:, e il calcolo della funzione x+y si può realizzare in questo modo:

/ / / / / …… / / / / / ……

Page 57: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

57

Intorno al 1930 l’inglese Alan Turing e lo statunitense Alonso ChurchIntorno al 1930 l’inglese Alan Turing e lo statunitense Alonso Churchproposero la seguente tesi:proposero la seguente tesi:

ogni funzione “naturalmente considerata calcolabile”ogni funzione “naturalmente considerata calcolabile”è calcolabile da una macchina di Turingè calcolabile da una macchina di Turing

La conseguenza è sorprendente:La conseguenza è sorprendente:l’insieme delle funzioni calcolabili è lo stesso per tutti i calcolatori;l’insieme delle funzioni calcolabili è lo stesso per tutti i calcolatori;

le differenze di capacità tra calcolatori sono:le differenze di capacità tra calcolatori sono:• quantitative (= tempo di calcolo)quantitative (= tempo di calcolo)• e non qualitative (= tipo di funzioni calcolabili)e non qualitative (= tipo di funzioni calcolabili)

Page 58: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

58

• Fonti per lo studioFonti per lo studio▶ Informatica arte e mestiere, S. Ceri, D. Mandrioli, L. Sbattella, McGrawHill

Capitolo 1▶ Introduzione ai sistemi informatici, D. Sciuto, G. Buonanno, L. Mari, 4a Ed,

McGrawHill Capitolo 1

▶ The Art & Craft of Computing, S. Ceri, D. Mandrioli, L. Sbattella, Addison-Wesley Capitolo 1

• ApprofondimentiApprofondimenti▶ Uomini e computer. Storia delle macchine che hanno cambiato il mondo, D.

Casalegno, HOEPLI

• CreditsCredits▶ Prof. G. Buonanno e D. Sciuto, LIUC

Page 59: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

59

Page 60: DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – marco.santambrogio@polimi.it Ver. aggiornata al 12 Marzo 2014.

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE

60