Lez. 1 – Introduzione all’informatica 1 II docenti del corso GRUPPO 1: Prof. Raffaele Farina [email protected] GRUPPO 2: Prof. Pasquale De Michele Dipartimento di Matematica e Applicazioni Università di Napoli “Federico II” Compl. Univ. Monte S.Angelo Via Cintia, I-80126, Napoli [email protected] Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 2 Raffaele Farina… …ma chi è??? Link • PhD in Mathematics & Computer Science • Docente di Matematica (scuole superiori). • Interessi di ricerca: (vedi ResearchGate!) Link Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 3 Pasquale De Michele… …ma chi è??? Link Link Link Prof.PasqualeDeMichele– Gruppo2 • PhD in Computer Science • Docente (supplente) di Tecnologie Informatiche (scuole superiori). • Interessi di ricerca: • Neuroscienze computazionali (reti neurali). • Scientific Computing. • Architetture di calcolo parallele. • Cultural Heritage Lez.1– Introduzioneall’informatica 4 ????????????? Sì OK, siete simpatici, ma da dove posso reperire: • il materiale didattico, • le ultime notizie ed • altre informazioni? Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 5 Per accedere a tutto il materiale del corso, avere tutte le informazioni relative agli esami, effettuare prenotazioni e consultare i voti: • Sito web: www.afs.enea.it/demichel Per essere aggiornati su tutte le news, su eventuali variazioni dell’orario lezione, accedere al materiale extra generato durante le lezioni (esercizi, ecc.): • Gruppo Facebook: https://www.facebook.com/groups/lab.info.biot ec/ Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 6 Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 7 Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 8 Matricole PARI e DISPARI: caso 1 - Alunno: “Professore, sono matricola DISPARI, ma vorrei seguire con i PARI perché ci sono un sacco di miei “amici” (direi che “colleghi” suona meglio).” - Professore: “NO!” - Alunno: “Professore, ma insieme pariamo assai!!!” - Professore: “Ah, allora giammai!” N.B.: Qualora dovesse capitare che, per una particolare lezione, i due corsi, anziché svolgersi (come da calendario) allo stesso orario, dovessero tenersi, per motivi straordinari, in orari distinti, possiamo essere flessibili. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 9 Matricole PARI e DISPARI: caso 2 - Alunno: “Professore, non mi hanno ancora assegnato una matricola, posso seguire con lei?” - Professore: “Sì, però deve conoscere la sua data di nascita…” • Chi non ha una matricola può scegliere dove seguire, finché non riceve la matricola: • Se la matricola viene comunicata entro il 31 ottobre, si verrà assegnati al gruppo corrispondente alla propria matricola: • • Matricola DISPARI – Gruppo 1. • Matricola PARI – Gruppo 2. Se la matricola non viene comunicata entro il 31 ottobre, si verrà assegnati al gruppo corrispondente al giorno in cui si è nati: • • • Giorno di nascita DISPARI – Gruppo 1. Giorno di nascita PARI – Gruppo 2. Consiglio: scegliete il gruppo relativo al vostro giorno di nascita, è più probabile che resterete in quel gruppo. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 10 - Fornire una formazione di base all’Informatica e all’uso delle Tecnologie della Informazione e della Comunicazione. - Conoscere l’elaboratore (il computer) e le sue funzionalità di base. - Conoscere la struttura e le possibilità offerte da alcuni dei più utilizzati pacchetti applicativi di office automation. - Conoscere le basi della programmazione ed i rudimenti di un linguaggio di programmazione. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 11 Programma (di massima) in aula 06/10/16 Introduzione all’informatica - Definizione di Informatica - Sistemi di Elaborazione - Applicazioni dell’Informatica L’elaboratore - Tipi di elaboratore - Rappresentazione dell’informazione - Codifica dell’informazione HW dell’elaboratore - L’unità centrale di elaborazione - Le memorie secondarie - Le periferiche di I/O SW dell’elaboratore - La programmazione - Il Sistema Operativo (SO) - I programmi applicativi Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica Programma di laboratorio (in aula) 06/10/16 Esercitazioni: - Excel Programmazione: -R Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica - Definizione di Informatica - Sistemi di Elaborazione - Applicazioni dell’Informatica Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 14 L’informatica è la scienza dei calcolatori L’informatica è la scienza della programmazione L’informatica è la scienza di Internet Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 15 INFORMATICA - Acronimo di INFORMAzione automaTICA - Insieme dei processi e delle tecnologie che rendono possibile la creazione, la raccolta, l’elaborazione, l’immagazzinamento e la trasmissione dell’informazione con metodi automatici. - Scienza preesistente all’elaboratore. L’informatica è lo studio degli algoritmi: - delle loro proprietà formali e matematiche - delle loro realizzazioni hardware - delle loro realizzazioni linguistiche - delle loro applicazioni Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 16 Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 17 Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 18 Sviluppo dell’Informatica come insieme di tecnologie IT = Information Technology ICT = Information & Communication Technology Le tecnologie informatiche hanno tre funzioni principali: - Elaborare significative; dati per ottenere informazioni - Mantenere le informazioni elaborate per utilizzarle come dati di un nuovo processo di elaborazione; - Organizzare le informazioni in una nuova forma in modo da renderle più comprensibili e più utili. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 19 I dati, definiti dal dizionario fatti singoli, statistiche o informazioni, sono la materia prima del trattamento dell’informazione. Tipi di dati: - Dati semplici: - Dati complessi: numeri, caratteri, date immagini, grafici, filmati, animazioni suoni, La gestione di dati complessi è resa possibile dalla potenza raggiunta dagli elaboratori nell’ultimo decennio: ad esempio, video 4K… L’elaborazione dei dati è soltanto una fase di un procedimento più complesso chiamato ciclo di elaborazione dell’informazione. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 20 Dati: simboli con cui si rappresenta la realtà Informazione: prodotta attraverso l’elaborazione dei dati L’elaborazione trasforma dati di INPUT in dati di OUTPUT Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 21 Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 22 Elaborazione automatica dell’informazione Processo in cui un esecutore esegue un particolare insieme di azioni su un insieme di informazioni obbedendo ad una procedura definita, allo scopo di risolvere un problema. La descrizione della procedura deve contenere: - la specifica dei dati da elaborare; - la sequenza di azioni da compiere; - la specifica dei controlli che determinano l’ordine in cui eseguire le azioni. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 23 Procedura di elaborazione (Algoritmo) Sequenza finita di azioni che risolve in un tempo finito un problema Programma Codifica della procedura di elaborazione che consente la risoluzione di un problema, in un linguaggio comprensibile dall’esecutore. Esecutore Una macchina capace di eseguire i programmi (le azioni specificate dall’algoritmo codificate in un determinato linguaggio di programmazione) Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 24 Un insieme ben ordinato e finito di operazioni non ambigue ed effettivamente calcolabili che, applicate ad un insieme di condizioni iniziali, produce un risultato e termina in una quantità di tempo finita. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 25 Un insieme ben ordinato e finito di operazioni non ambigue ed effettivamente calcolabili che, applicate ad un insieme di condizioni iniziali, produce un risultato e termina in una quantità di tempo finita. Ognicompitochenoisvolgiamoquotidianamente puòesserevistocomeunalgoritmo. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica ¨ ¨ ¨ ¨ Algoritmo:unasequenzafinitaedordinatadi operazionichedescrivonolasoluzionediunproblema. Per finita si intende che un algoritmo ha un inizio ed una fine: non ci sono infinite operazioni da compiere. Di conseguenza, un algoritmo ha sempre un inizio ed una fine. Per ordinato si intende che l’ordine con il quale si eseguono le operazioni è importante. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica Algoritmi e Diagrammi di Flusso ¨ ¨ In informatica le operazioni vengono dette istruzioni. Tipi di istruzioni: ¡ ¡ ¡ ¡ Azioni: “calcola il valore x” Controllo: “se si verifica A allora calcola x… altrimenti calcola y” Comunicazione: “leggi il valore x”; “stampa il valore y” Salto: “se si verifica A allora prosegui… altrimenti salta ad un’altra istruzione” Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica Algoritmi e Diagrammi di Flusso •Ricetta di cucina •Sequenza di operazioni per registrare un programma con un videoregistratore •Sequenza di operazioni per montare una tenda •Sequenza di operazioni per moltiplicare due numeri •Sequenza di operazioni per lavarsi i denti Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 29 Consideriamo l’algoritmo per lavarsi i denti: 1.Prendi lo spazzolino. 2.Prendi il dentifricio. 3.Metti il dentifricio sullo spazzolino. 4.Posa il dentifricio. 5.Apri l’acqua. 6.Bagna lo spazzolino. 7.Chiudi l’acqua. 8.Porta lo spazzolino alla bocca. 9.Spazzolare. 10.Controlla se i denti sono puliti. a. Se i denti non sono ancora puliti, ritorna all’operazione 9. b. Se i denti sono puliti vai all’operazione 11. 11.Posa lo spazzolino. 12.Apri l’acqua. 13.Sciacqua la bocca. 14.Chiudi l’acqua. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 30 Nell’esempio mostrato, sono verificate le due caratteristiche degli algoritmi, ossia l’algoritmo è una sequenza finita ed ordinata di operazioni: •L’algoritmo è finito: inizia con l’operazione 1 e termina con l’operazione 14. •L’algoritmo è ordinato: se cambiassi l’ordine di alcune operazioni, potrei ottenere: Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 31 1. Posa il dentifricio. 2. Spazzolare. 3. Chiudi l’acqua. 4. Posa lo spazzolino. 5. Prendi il dentifricio. 6. Metti il dentifricio sullo spazzolino. 7. Apri l’acqua. 8. Bagna lo spazzolino. 9. Chiudi l’acqua. 10.Porta lo spazzolino alla bocca. 11.Controlla se i denti sono puliti. 12.Prendi lo spazzolino. a. Se i denti non sono ancora puliti, ritorna all’operazione 11. b. Se i denti sono puliti vai all’operazione 13. 13.Apri l’acqua. 14.Sciacqua la bocca. Da come possiamo osservare, le operazioni restano le stesse, benché l’ordine sia variato, ma sicuramente con questo algoritmo non potremmo dire di aver lavato i denti correttamente. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 32 La ricetta per cuocere 100g di pasta: 1.Metti 1 L di acqua in una pentola 2.Poni la pentola sul fornello 3.Accendi la fiamma del fornello 4.Finché l’acqua non bolle ripeti il passo 5. 5.Aspetta un minuto 6.Aggiungi 10 g di sale grosso 7.Leggi sulla confezione della pasta la cottura prevista 8.Versa la pasta nell’acqua bollente 9.Aspetta il tempo di cui al punto 7 10.Scola la pasta 11.Fine Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 33 L’obiettivo è la costruzione di uno o più mezzi di calcolo in grado di eseguire “operazioni primitive” (ovvero effettivamente calcolabili). Un mezzo di calcolo che esegue operazioni primitive permette di automatizzare la soluzione di un problema espressa da un algoritmo. La soluzione di un problema espressa da un algoritmo costituito da sequenze di operazioni primitive può essere automatizzata. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 34 - Definizione di Informatica - Sistemi di Elaborazione - Applicazioni dell’Informatica Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 35 L’elaboratore Mezzo strumentale (macchina, hardware) per la rappresentazione, la memorizzazione e l’elaborazione delle informazioni (dati, software) Elaboratore elettronico digitale Elaboratore Elettronico = utilizza componenti elettronici per elaborare le informazioni Digitale = elabora informazioni mediante numerazione binaria Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 36 Un sistema è un insieme complesso di elementi (detti sottosistemi) di natura anche differente che operano in maniera congiunta per svolgere una specifica funzione. Sistema di Elaborazione Insieme organizzato di apparecchiature e processi che interagiscono fra loro, finalizzati all’elaborazione automatica delle informazioni Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 37 A seconda della scala adottata, uno stesso elemento può essere considerato un sistema o un componente. Un computer è un sistema costituito da componenti hardware (HW) e componenti software (SW). Ogni componente del computer è a sua volta un sistema costituito da micro-componenti (es. il microprocessore, la memoria, …). Una rete di computer è un sistema, i cui componenti sono i computer e le connessioni tra essi. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 38 Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 39 Il computer ha due macrocomponenti: 1.Hardware La struttura fisica dell’elaboratore, costituita da componenti elettronici, elettromeccanici ed ottici 2.Software L’insieme dei programmi che consentono all’hardware di svolgere compiti specifici. La presenza di una componente hardware ed una software determina la capacità della macchina di eseguire elaborazioni di tipo differente senza modificare la struttura fisica. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 40 Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 41 Dualismo hardware e software Hardware e software sono logicamente equivalenti; I confini tra HW w SW sono arbitrari, in continuo mutamento; - Ogni operazione eseguita dall’HW può essere simulata dal SW - Ogni operazione eseguita dal SW può essere costruita in HW. - La decisione di realizzare alcune funzioni in HW e altre in SW è solo basata su fattori quali costo, velocità, affidabilità. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 42 I primi mezzi automatici di calcolo compaiono nel XVII secolo ad opera di Pascal e Leibniz. Funzionano sulla base di ruote dentate. La Pascalina Prof.PasqualeDeMichele– Gruppo2 La macchina di Leibniz Lez.1– Introduzioneall’informatica 43 Ma la prima macchina a disporre di un vero programma è il telaio di Jacquard costruito nel 1804: il disegno della trama viene inserito tramite schede perforate e realizzato automaticamente dalla macchina. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 44 Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 45 Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 46 Il principale problema dei calcolatori fino agli anni ‘40 era la fondamentale differenza fra il modo in cui venivano memorizzati i dati e quello in cui venivano realizzati i programmi, che non erano memorizzati, ma realizzati esternamente usando connessioni, fili etc. Fu il genio di Von Neumann che permise di progettare e realizzare, nel 1950, l’EDVAC, il primo calcolatore a programma memorizzato. L’EDVAC pesava 8 ton e aveva una memoria di 1024 parole … ma non era nella sostanza diverso dal computer usato per scrivere questa presentazione … Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 47 Lo schema della macchina di Von Neumann, modello sul quale si basano praticamente tutti i moderni computer è basato su quattro elementi fondamentali: - La memoria - L’unità aritmetico logica (ALU) - L’unità di controllo - Le unità di Ingresso/uscita (I/O) Prof.PasqualeDeMichele– Gruppo2 Processore (CPU) Lez.1– Introduzioneall’informatica 48 Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 49 Motivati principalmente da esigenze belliche i primi grandi calcolatori elettronici a valvole furono realizzati dalle maggiori potenze in conflitto nel corso degli anni 40. Presper Eckert Jr. (1919-1995) e John Mauchly (1907-1980) crearono nel 1946 ENIAC, Contemporaneamente John Atanasoff sviluppava l’ABC, Peccato che Konrad Zuse (1910-1995) aveva costruito da solo nel 1941 lo Z3. ENIAC: 18000 valvole 30 m lunghezza 30 tonnellate Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 50 Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 51 - Definizione di Informatica - Sistemi di Elaborazione - Applicazioni dell’Informatica Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 52 Applicazioni della tecnologia informatica (Information Technology) in innumerevoli campi (medicina, ingegneria, chimica, astronomia, arte, scuola e formazione professionale…) Aspetti applicativi più rilevanti della IT - Gestione aziendale - Office automation - Database - Educazione - Commercio - Giochi ed intrattenimento Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 53 Informatica ed azienda Sistema informativo aziendale = insieme di tutti i dati e tutti i processi che riguradano la raccolta, l’archiviazione, l’elaborazione, la distribuzione dei dati nelle attività operative e di controllo. Sistema informatico = insieme delle risorse tecnologiche facenti parte il sistema informativo Applicazioni -Transazioni con i fornitori, dipendenti e clienti - Analsi finanziarie (analisi di spese, investimenti, vendite, ecc.) - Lavori d’ufficio (office automation) - DSS (Decision Support System) - Data Mining Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 54 Progettazione di prodotti complessi Tecniche CAD (Computer Aided Design – Progettazione assistita dal computer) Produzione di prodotti Tecniche CAM (Computer Aided Manufactoring – Fabbricazione assistita dal computer) utilizzate in fase di produzione per controllare i sistemi robotizzati che creano, rifiniscono, assemblano e testano i prodotti e i loro componenti. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 55 Home banking • Gestione del conto corrente – Rapporti investimenti • Gestione di portafogli di titoli – Andamenti, investimenti E-goverment • gestione di grandi archivi • riduzione d supporti cartacei • erogazione di servizi on-line Efficienza, trasparenza, riconoscimento automatico, pluralità di canali, interoperabilità Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 56 Medicina e salute • Gestione dati clinici • Controllo ambulanze • Automazione di apparecchiature mediche • Supporto ad interventi medici • Analisi comportamento pazienti • Terapie personalizzate • Controllo terapie Telelavoro (e-job) • Domiciliare • mobile Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 57 Istruzione e formazione • Iscrizione e gestione studenti, gestione orari e aule, comunicazione scuola-famiglia. • Adeguamento dell’insegnamento alle esigenza dello studente • Supporto a studenti con esigenze speciali • Apprendimento assistito tecnologie CBT, Computer Based Training, utilizzate nel campo della didattica e della formazione professionale. • Formazione a distanza (e-learning) Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 58 Commercio elettronico (e-commerce) • Vendita di beni e servizi tramite la rete internet. • Visibilità mondiale • Aggiornamento continuo dei clienti • Costi ridotti • Accessibilità continua • Transazioni finanziarie on-line Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 59 Sistema di navigazione globale (GPS) Sistema costituito da 24 satelliti in orbita nello spazio, da 5 postazioni terrestri che ne controllano il funzionamento e milioni di ricevitori. Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 60 Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 61 Prof.PasqualeDeMichele– Gruppo2 Lez.1– Introduzioneall’informatica 62