Mari, Buonanno, Sciuto – Informatica e cultura dell’informazione – McGraw-Hill 4/7/2017 Capitolo 0 Un’introduzione alla scienza e alle tecnologie dell’informazione.

Slides:



Advertisements
Presentazioni simili
S T O R I A D E L C A L C O L A T O R E.
Advertisements

…da von Neumann al computer quantistico
…da von Neumann al computer quantistico architettura dellelaboratore.
I & I Inglese e Informatica
Meccanismi di IPC Problemi classici di IPC
Informatica Generale Susanna Pelagatti
Il Software.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità E1 Dallanalisi del problema alla definizione dellalgoritmo.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità B2 Origini matematiche e tecnologiche dellinformatica.
Origini matematiche e tecnologiche dell’informatica
Inizio… Linguaggi Linguaggi di programmazione Linguaggi di programmazione Linguaggi di programmazione Linguaggi di programmazione Linguaggi Formali Linguaggi.
Trasmissione delle informazioni
INTRODUZIONE ALL’ INFORMATICA
Introduction to OOP with Java 4th Ed, C. Thomas Wu
1 Istruzioni, algoritmi, linguaggi. 2 Algoritmo per il calcolo delle radici reali di unequazione di 2 o grado Data lequazione ax 2 +bx+c=0, quali sono.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Lab 2 – Info B Marco D. Santambrogio – Riccardo Cattaneo –
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – Ver. aggiornata al 9 Agosto 2013.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – Ver. aggiornata al 3 Ottobre 2013.
2 Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione dati memorizzazione dati trasferimento.
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Algoritmi e Strutture Dati Capitolo 2 Modelli di calcolo e metodologie.
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Algoritmi e Strutture Dati Capitolo 2 Modelli di calcolo e metodologie.
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Algoritmi e Strutture Dati Capitolo 2 Modelli di calcolo e metodologie.
Corso di Laurea in Biotecnologie Informatica (Programmazione)
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Corso di Informatica (Programmazione)
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Rappresentazione dellinformazione su calcolatore Anno Accademico 2009/2010.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Problemi e algoritmi Anno Accademico 2009/2010.
Corso di Informatica per Giurisprudenza
Unità Didattica 2 I Linguaggi di Programmazione
I numeri by iprof.
Organizzazione del corso
Strutture di controllo in C -- Flow Chart --
Fondamenti di Informatica Algoritmi
I File.
Corso Informatica 201’ Ing. Fabrizio Cattadori
Labortaorio informatica 2003 Prof. Giovanni Raho 1 INFORMATICA Termini e concetti principali.
L’AUTOMA ESECUTORE Un automa capace di ricevere dall’esterno una descrizione dello algoritmo richiesto cioè capace di interpretare un linguaggio (linguaggio.
UNIVERSITA’ STUDI DI ROMA “FORO ITALICO”
Elementi di Informatica
Informatica: il trattamento automatico dell’informazione
Modulo 1 - Hardware u.d. 3 (syllabus – 1.3.5)
Elementi di Informatica di base
ELETTRONICA DIGITALE (II Parte)
STRUTTURA GENERALE DI UN ELABORATORE
L' ARCHITETTURA DI VON NEUMANN
Il computer: struttura fisica e struttura logica
L’inventore del calcolatore odierno
Breve storia dei calcolatori
Architettura del calcolatore
CONCETTI DI BASE 1.0 FONDAMENTI 1.1 HARDWARE 1.2 SOFTWARE 1.3 RETI
Programma di Informatica Classi Prime
Informatica Lezione 4 Scienze e tecniche psicologiche dello sviluppo e dell'educazione Anno accademico:
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
IO E LA MATEMATICA PROCEDURALE
Mari, Buonanno, Sciuto – Informatica e cultura dell’informazione – McGraw-Hill 4/7/2017 Un’introduzione alla scienza e alle tecnologie dell’informazione.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Costrutti iterativi Marco D. Santambrogio – Ver. aggiornata al 20 Ottobre 2014.
Process synchronization
Architettura del calcolatore
Introduzione: informatica 18/2/2013 Informatica applicata alla comunicazione multimediale Cristina Bosco.
ORGANIZZAZIONE DI UN SISTEMA DI ELABORAZIONE
Rappresentazione dell’informazione nel calcolatore.
Informatica Lezione 5 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Algoritmi.
Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
- Michela Fragassi - Abilità Informatiche Storia del computer.
Storia del computer.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 1 Marco D. Santambrogio – Ver. aggiornata al 24 Agosto 2015.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Algoritmi e basi del C Marco D. Santambrogio – Ver. aggiornata al 24 Agosto 2015.
…da von Neumann al computer quantistico L’archittettura dell’elaboratore.
Transcript della presentazione:

Mari, Buonanno, Sciuto – Informatica e cultura dell’informazione – McGraw-Hill 4/7/2017 Capitolo 0 Un’introduzione alla scienza e alle tecnologie dell’informazione e della comunicazione Capitolo 5 – La formalizzazione dell'informazione

Obiettivi di apprendimento Mari, Buonanno, Sciuto – Informatica e cultura dell’informazione – McGraw-Hill Informazione e trattamento dell’informazione Programmabilità del calcolatore e concetti di hardware e software Macchina di von Neumann Comunicazione tra esseri umani e calcolatori 4/7/2017 Obiettivi di apprendimento 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Capitolo 5 – La formalizzazione dell'informazione

Il concetto ambiguo di informazione Mari, Buonanno, Sciuto – Informatica e cultura dell’informazione – McGraw-Hill 4/7/2017 Il concetto ambiguo di informazione Significato 1: [informazione = dati + istruzioni] insieme 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’operazione che si scriva “uno più due” o “1+2” l’informazione è la stessa Significato 2: [informazione = dati con significato] ciò 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 contenuto Come è abituale nelle STIC, adottiamo qui il significato 1 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Capitolo 5 – La formalizzazione dell'informazione

Mari, Buonanno, Sciuto – Informatica e cultura dell’informazione – McGraw-Hill 4/7/2017 Approccio top-down Le tecnologie di successo sociale producono strumenti utilizzabili anche da chi non ne conosce i dettagli di funzionamento, grazie alla presenza di un’appropriata interfaccia utente (user interface, UI) Approccio “a scatola chiusa” (black box): interazione con la scatola (la UI dello strumento) e non con il suo contenuto lo strumento è più facilmente usabile ma rischia di essere sotto (e in certi casi anche mal) utilizzato e quindi, in certi casi… Approccio “dall’alto verso il basso” (top-down): aprendo il coperchio della scatola si trovano altre scatole si continuano ad aprire coperchi fino a giungere al livello di dettaglio richiesto 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Capitolo 5 – La formalizzazione dell'informazione

I calcolatori: cos’hanno di speciale? Mari, Buonanno, Sciuto – Informatica e cultura dell’informazione – McGraw-Hill 4/7/2017 I calcolatori: cos’hanno di speciale? Molti strumenti sono stati progettati e realizzati per trattare 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 programmabili Ma cosa significa programmabile? 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Capitolo 5 – La formalizzazione dell'informazione

Informazione indicale le mele nel cesto le mele nel cesto Ma l’informazione può essere più che indicale… 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC

Elaborazione dell’informazione Mari, Buonanno, Sciuto – Informatica e cultura dell’informazione – McGraw-Hill 4/7/2017 Elaborazione dell’informazione La programmabilità di un dispositivo attiene alle modalità con cui esso gestisce informazione Per esempio, per risolvere questo problema, 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 … 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Capitolo 5 – La formalizzazione dell'informazione

Mari, Buonanno, Sciuto – Informatica e cultura dell’informazione – McGraw-Hill 4/7/2017 Dati e istruzioni Per gestire informazione, si opera su dati mediante istruzioni: a mente supporto materiale mente dati X istruzioni carta e penna supporto materiale mente dati X istruzioni calcolatore supporto materiale mente dati X istruzioni: esecuzione istruzioni: controllo calcolatrice supporto materiale mente dati X istruzioni: esecuzione istruzioni: controllo 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Capitolo 5 – La formalizzazione dell'informazione

Elaborazione dell’informazione Mari, Buonanno, Sciuto – Informatica e cultura dell’informazione – McGraw-Hill Ogni essere umano elabora quotidianamente informazione in grande quantità senza usare strumenti particolarmente sofisticati 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 strumenti 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 4/7/2017 Elaborazione dell’informazione 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Capitolo 5 – La formalizzazione dell'informazione

I primi calcolatori meccanici /1 07/04/2017 I primi calcolatori meccanici /1 Blaise Pascal (1623-1662) dispositivo meccanico (ingranaggi azionati da una manovella) per l’esecuzione di somme e sottrazioni Gottfried Wilhelm von Leibniz (1646-1716) introduce anche moltiplicazioni e divisioni (calcolatrice a quattro funzioni) Charles Babbage (1792-1871) progetta e realizza un “difference engine” calcola tabelle di numeri utili per la navigazione unico algoritmo: polinomiale alle differenze finite output: fori su una piastra di rame (schede perforate) 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

I primi calcolatori meccanici /2 07/04/2017 I primi calcolatori meccanici /2 Charles Babbage (1792-1871) macchina programmabile: “analytical engine” Formata da quattro parti: store (memoria: 1000 celle × 50 cifre) mill (unità di calcolo: 4 operazioni + trasferimento dati) input (lettore schede) output (perforatore schede) Con istruzioni 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 Lovelace Troppo avanzata per la tecnologia del tempo: troppi errori hardware (ruote dentate di precisione) 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

Il periodo bellico /1 Konrad Zuse (Germania, anni ’30 e ’40) 07/04/2017 Il periodo bellico /1 Konrad Zuse (Germania, anni ’30 e ’40) Realizza macchine calcolatrici automatiche basate su relè elettromagnetici Distrutte dal bombardamento di Berlino del 1944 John Atanasoff (Iowa State College, anni ’30) Macchina basata sull’aritmetica binaria Memoria basata su condensatori rinfrescati periodicamente Troppo avanzata per la tecnologia disponibile (problemi HW) George Stibbitz (Bell Labs, anni ’30) Calcolatore più primitivo rispetto a quello di Atanasoff, ma funzionante (presentato a una conferenza nel 1940) Howard Aiken (Harvard, anni ’40) Riprende il lavoro di Babbage e lo implementa sfruttando la tecnologia dei relè elettromagnetici. Nel 1944 completa il Mark I: un’istruzione eseguita ogni 6 secondi input e output su/da nastro di carta perforato 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

07/04/2017 Il periodo bellico /2 Negli anni ’40 si sviluppa una nuova tecnologia: le valvole termoioniche rendono obsoleti i relè elettromagnetici COLOSSUS (Inghilterra 1943) Primo calcolatore digitale elettronico Usato per decifrare i messaggi segreti tedeschi Segreto militare per 30 anni, perciò ininfluente ENIAC (Mauchley ed Eckert - USA 1946) Electronic Numerical Integrator And Computer Composto da 18 000 valvole e 1500 relè per un peso complessivo di 30 t e un consumo di 140 kw 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

John von Neumann Partecipa al progetto ENIAC 07/04/2017 John von Neumann Partecipa al progetto ENIAC Due intuizioni fondamentali: memorizzare i programmi in forma digitale nella stessa memoria dei dati per rendere più semplice la programmazione (rispetto all’utilizzo di cavi e interruttori) utilizzare l’aritmetica binaria invece di quella decimale (due valvole per bit invece di dieci per cifra) Il suo progetto (macchina di von Neumann) è ancora oggi alla base di quasi tutti i calcolatori digitali 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

L’architettura di Von Neumann 07/04/2017 L’architettura di Von Neumann 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 Sottosistema di interfaccia Sottosistema di memorizzazione Sottosistema di elaborazione Ha due funzioni: eseguire le istruzioni controllare il flusso dell’esecuzione Comunica con utenti o con altri dispositivi Memorizza dati e istruzioni Sottosistema di interconnessione 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

Il calcolatore in un sistema 07/04/2017 Il calcolatore in un sistema ambiente da controllare sensori calcolatore locale attuatori automazione rete interfaccia utente calcolatore remoto 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

Interazione tra utenti e calcolatori 07/04/2017 Interazione tra utenti e calcolatori a b c d e f Ciclo a-f interazione tra un utente e un calcolatore esecuzione locale di un programma o accesso a documentazione locale Ciclo a-b-e-f interazione tra un utente e un calcolatore remoto, mediata da un secondo calcolatore in rete con il primo esecuzione remota o distribuita di un programma o accesso a documentazione remota Ciclo a-b-c-d-e-f interazione tra utenti mediata da calcolatori esecuzione distribuita e cooperativa di un programma o scambio di documentazione 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

Interazione uomo-macchina 07/04/2017 Interazione uomo-macchina 1. Input: dati e istruzioni 3. Output: dati (risultati dell’elaborazione) 2. Elaborazione e quindi, il calcolatore si può intendere come una black box: calcolatore Input Output 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

Il calcolatore: interprete ed esecutore 07/04/2017 Il calcolatore: interprete ed esecutore Ricevendo una richiesta dall’utente, il calcolatore svolge in successione due attività: controlla di essere in grado di interpretare il comando, cioè di riconoscere il comando come corretto e corrispondente a un’azione che è in grado di eseguire se il controllo ha dato esito positivo, esegue l’azione associata al comando e, quando richiesto, presenta il risultato all’utente Invece di inviare al calcolatore un comando per volta, l’utente può scegliere di creare una successione di comandi (= programma) e inviarla al calcolatore, che autonomamente è in grado di interpretare ed eseguire il programma stesso, un’istruzione per volta 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

La comunicazione con il calcolatore 07/04/2017 La comunicazione con il calcolatore L’utente-programmatore e il calcolatore devono parlare uno stesso linguaggio Un’opzione potrebbe essere di “insegnare al calcolatore” a comprendere (= interpretare ed eseguire comandi espressi in) una lingua storico-naturale come l’italiano o l’inglese Vantaggi: lingue semanticamente ricche, e quindi sicuramente in grado di esprimere i comandi lingue già note all’utente Svantaggi: lingue semanticamente ricche, e quindi a rischio di ambiguità lingue complesse da insegnare / imparare 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

Due esempi Comando: “nella frase metti in grassetto la parola X” 07/04/2017 Due esempi Comando: “nella frase l'informatica, che in inglese è detta 'computer-science', è interessante anche se difficile metti in grassetto la parola X” X: “è”  ambiguo: quale delle due “è”? X: “in decima posizione”  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”  ambiguo: C deve essere eseguito comunque o solo se A è vera? 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

Comunicazione mediante linguaggi formali 07/04/2017 Comunicazione mediante linguaggi formali Un’opzione alternativa: creare un linguaggio “di programmazione”, dedicato alla comunicazione con il calcolatore Vantaggi: linguaggio progettato specificamente, e quindi efficiente linguaggio non ambiguo Svantaggi: linguaggio formalizzato, e quindi strutturalmente diverso dalle lingue storico-naturali linguaggio non noto all’utente 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

Un esempio se A è vero esegui B; 07/04/2017 Un esempio 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? 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; in ogni caso quindi esegui l’istruzione C se A è vero esegui sia B sia C 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

Calcolatori: strumenti di calcolo? 07/04/2017 Calcolatori: strumenti di calcolo? Sebbene si consideri abitualmente che oggetto del calcolo sono numeri, i calcolatori operano anche su dati non numerici, come testi, immagini, musica… Un problema di elaborazione di dati non numerici è riconducibile a calcolo numerico se 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 Codice ASCII: spazio  32; ‘A’  65; ‘B’  66; …; ‘a’  97; ‘b’  98; … e quindi: “ciao mondo”  99 105 97 111 32 109 111 110 100 111 Data questa codifica, un problema come: trasformare una frase scrivendo con l’iniziale maiuscola tutte le parole che la compongono (per cui “ciao mondo” dovrebbe diventare “Ciao Mondo”) è effettivamente un problema di calcolo 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

07/04/2017 Un esempio di calcolo Se il linguaggio di programmazione adottato contiene un’istruzione words_uppercase(), il problema si risolve semplicemente: words_uppercase(“ciao mondo”) Altrimenti, è il programmatore a dover “scomporre” il problema in sottoproblemi più semplici, per esempio: 1. identifica le parole da cui la frase è costituita 2. per ogni parola, metti il suo primo carattere in maiuscolo Data la successione: 99 105 97 111 32 109 111 110 100 111 la prima istruzione corrisponde a individuare nella successione le sotto-successioni di numeri separate dal numero 32 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 mediante semplici istruzioni come “se … è uguale a … allora …”, “somma … a …”, e così via 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

07/04/2017 I problemi del calcolo Non ogni problema ammette una soluzione calcolabile Quali problemi ammettono una soluzione calcolabile? Esistono problemi calcolabili che i calcolatori non 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à di risolvere problemi? 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

Calcolo come calcolo di funzioni 07/04/2017 Calcolo come calcolo di funzioni Ipotesi: il calcolo è una trasformazione di dati, in cui l’output è determinato univocamente dall’input attraverso una funzione: f input output = f(input) Per esempio, 1+2*3 e 4+5*6 sono due casi particolari della stessa funzione f(x,y,z)=x+y*z Ipotesi: le funzioni complesse possono essere scomposte come successioni di funzioni più semplici Per esempio: x,y,z x+y*z f * + y z x 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

La macchina di Turing Un sistema di calcolo molto semplice: 07/04/2017 La macchina di Turing Un sistema di calcolo molto semplice: un nastro organizzato in celle in ognuna delle quali è scritta una barra o nulla e con codifica “unaria” (1  “ / ”; 2  “ // ”; 3  “ /// ”; … un sistema di lettura e scrittura che opera in base a regole della forma: se sei nello stato ... e nella cella hai letto ..., allora nella cella scrivi ..., passa nello stato ... e spostati nella cella ... Per esempio, il nastro: / … codifica i numeri 2 e 3, e il calcolo della funzione x+y si può realizzare in questo modo: / … / … 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici

La tesi di Church - Turing 07/04/2017 La tesi di Church - Turing Intorno al 1930 l’inglese Alan Turing e lo statunitense Alonso Church proposero la seguente tesi: ogni funzione “naturalmente considerata calcolabile” è calcolabile da una macchina di Turing La conseguenza è sorprendente: l’insieme delle funzioni calcolabili è lo stesso per tutti i calcolatori; le differenze di capacità tra calcolatori sono: quantitative (= tempo di calcolo) e non qualitative (= tipo di funzioni calcolabili) 07/04/2017 Informatica e cultura dell’informazione – capitolo 0 – Introduzione a STIC Introduzione ai sistemi informatici