Informazioni pratiche. Esami. Testi Consigliati. Corso di Informatica A.A Introduzione all informatica

Documenti analoghi
Corso di Informatica A.A

Corso di Informatica A.A

Corso di Informatica A.A

Lez. 1 Introduzione all informatica. Prof. Pasquale De Michele Gruppo 2

Lez. 1 Introduzione all informatica. Gruppo 1 e Gruppo 2

Cos è l informatica? Un esempio di algoritmo. Che cos è un algoritmo? Algoritmi e loro proprietà. non ambigue ed effettivamente calcolabili

Pag. 1. Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni. Architettura del calcolatore (parte II)

Lez. 1 Introduzione all informatica

Architettura di un calcolatore: primi cenni introduttivi. Calcolatore: sottosistemi

Sistemi di Elaborazione delle Informazioni

Architettura. Argomenti. Modello di Von Neumann. Corso di Laurea in Ingegneria Biomedica aa 2003/2004. Ing. Antonio Coronato. Modello di Von Neumann

Programmazione per BioInformatica Introduzione. Docente. Programma del corso. Nicola Drago

Architettura del Calcolatore

Laboratorio di Informatica. Introduzione

Architettura di un calcolatore: primi cenni introduttivi

Introduzione. Corso di Fondamenti di Informatica

L ARCHITETTURA DEI CALCOLATORI. Il processore La memoria centrale La memoria di massa Le periferiche di I/O

Organizzazione strutturata

Architettura degli Elaboratori

La macchina di Von Neumann. UNIVERSITÀ DEGLI STUDI DEL SANNIO Benevento DING DIPARTIMENTO DI INGEGNERIA CORSO DI "PROGRAMMAZIONE I"

Algoritmi e loro proprietà. Proprietà formali degli Algoritmi Efficienza rispetto al tempo Efficienza rispetto allo spazio

Algoritmi e loro proprietà. Che cos è un algoritmo? Un esempio di algoritmo

Fondamenti di Informatica

Informatica di base 4 crediti 32 ore!!

La macchina di Von Neumann. Esecuzione di un programma: instruction fetch. Esecuzione di un programma. Architettura di un elaboratore

LEZIONE 4. Hardware (periferiche) Software (algoritmi)

INFORMATICA GENERALE

Architettura dell elaboratore

Architettura dell elaboratore

Note sull architettura del calcolatore

Scopo della lezione. Informatica. Informatica - def. 1. Informatica

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica

Architettura di von Neumann

Salvatore Cuomo Prolusione

Introduzione al funzionamento di un calcolatore elettronico

Calcolatore: sottosistemi

Architettura di un elaboratore. Il modello di von Neumann

Elementi di informatica

Sistemi di numerazione

Il processore - CPU (CENTRAL PROCESSING UNIT)

Architettura di un calcolatore: introduzione. Calcolatore: sottosistemi

Abilità Informatiche e Telematiche

Esecuzione dei programmi

LABORATORIO DI INFORMATICA

Cenni sull architettura del calcolatore

Modulo 1: Le I.C.T. UD 1.4b: Anatomia del Computer

Elementi di informatica

INFORMATICA. L informatica comprende:

Lezione 1: L hardware

Architettura di un Computer

L elaboratore. Fondamenti di Informatica S.Badaloni Ing. Aerospaziale A.A. 2003/04

Laboratorio di Informatica. Introduzione. Laboratorio di Informatica

Architettura del. Calcolatori (1) Calcolatori (2) L architettura di Von Neumann. CPU RAM Memoria I/O. secondaria. bus

Struttura di un elaboratore

Corso di Informatica

Corso Integrato di Informatica e Sistemi di Elaborazione delle Informazioni

Architettura di un calcolatore: introduzione. Calcolatore: sottosistemi

Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori

Architettura generale del calcolatore Hardware (tutto ciò che e tangibile) Software (tutto ciò che non e tangibile)

La suddivisione lezione/esercitazione è orientativa Martedì Lezione Aula A4 Martedi Esercitazione Aula A2 Mercoledì Laboratorio

(1) (2) (3) (4) 11 nessuno/a (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B

ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE)

Architettura dei calcolatori

Architettura del computer

Elementi di Informatica Corso di Laurea in Scienze Geologiche a.a. 2003/2004. Docente. Orario. Da Ottobre-Dicembre:

Elementi di Informatica. Corso di Laurea in Scienze Geologiche a.a. 2003/2004

Depositi bancari ALGORITMI E MACCHINA DI VON NEUMANN COMPUTER = CALCOLATORE NON CERVELLO ELETTRONICO. CERVELLO: Capacità decisionali

Introduzione all'architettura dei Calcolatori. Maurizio Palesi

Fondamenti di programmazione e Laboratorio di introduzione alla programmazione (modulo 1)

Fondamenti: Informatica, Computer, Hardware e Software

Ogni CPU è in grado di eseguire un insieme limitato di istruzioni macchina codificate in binario secondo il seguente schema generale.

Architettura di von Neumann

Architettura di von Neumann

Architettura di un Sistema Informatico

Informatica A. Allievi Gestionali A.A Nozioni di Base

Dall algoritmo al calcolatore: concetti introduttivi. Fondamenti di Programmazione

Algoritmi e (cenni sul) calcolatore

Architettura degli Elaboratori

Architettura di un elaboratore

ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).!

Dall algoritmo al calcolatore: concetti introduttivi. Algoritmo. Problema: consumo medio 9/27/2018. Fondamenti di Programmazione 3

FONDAMENTI DI INFORMATICA

Fondamenti di Informatica A. A / 1 9

Gli algoritmi. Prof. Pasquale De Michele. Gli algoritmi. Pasquale De Michele

Fondamenti di programmazione!! Parte 2!

Corso Programmazione

Informatica di Base. Introduzione

Piccoli Ingegneri Informatici

G L O S S A R I O. Fondamenti di Informatica I - Università degli Studi di Trento Dott. Roberti Pierluigi

Architettura di un calcolatore: introduzione. Calcolatore: sottosistemi

Sistemi di Elaborazione delle Informazioni

Architettura degli Elaboratori

Piccoli Ingegneri Informatici

Cosa è? Come lo si usa? Come iniziare? Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO)

Transcript:

Corso di Informatica A.A. 2004-2005 Introduzione all informatica Informazioni pratiche Obiettivi del corso Definizioni generali Algoritmi e loro proprietà La macchina di Von Neumann Informazioni pratiche Studio F. Ambrosino : 2H12 Orario ricevimento: Martedì h 15.00-17.00 Tel. 081-676115 Pagina web lucidi del corso: http://people.na.infn.it/~ambrosin Studio E. Vardaci : 1G16 Orario ricevimento: Mercoledì h 15.00-17.00 Tel. 081-676105 F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 1 F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 2 Testi Consigliati G.M. Schneider, J.L. Gersting Corso di Informatica, Jackson Universita Per approfondimenti su s.o. e hardware consultare P.Tosoratti, Introduzione all Informatica, Casa Editrice Ambrosiana Esami Fino a Settembre 2005: Prove in Laboratorio : da 18 a 24 Scritto Orale : fino a 8 punti : fino a 4 punti Coloro che non superano le prove di laboratorio devono sostenere l esame scritto e orale Al Kelley, Ira Pohl C: Didattica e Programmazione, ADDISON-WESLEY Da Ottobre 2005: Prova scritta e orale F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 3 F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 4

Premessa Il corso non presuppone conoscenze informatiche precedenti Corso fatto da Fisici per (futuri) Fisici: Molto risalto agli aspetti applicativi e pratici Indispensabile seguire il Laboratorio F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 5 Ma a che serve l informatica ad un fisico? Analisi dei dati Simulazione di apparati e sistemi fisici complessi Controllo di apparecchiature di laboratorio Calcoli matematici complessi, sia numerici che simbolici Diffusione di risultati e dati rilevanti attraverso le reti Consultazione di archivi e ricerche bibliografiche. In tutti i settori della fisica teorica e sperimentale: subnucleare, nucleare, della materia, astrofisica, geofisica, biomedica, elettronica F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 6 Ma a che serve (II) Obiettivi del corso Conoscere gli aspetti fondamentali dell Informatica e della struttura dei calcolatori Essere in grado di utilizzare un calcolatore in ambiente Unix/Linux Essere in grado di progettare un algoritmo per risolvere un semplice problema e di implementarlo in un programma in linguaggio C F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 7 F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 8

Cos è l informatica? L informatica è la scienza dei calcolatori L informatica è la scienza della programmazione L informatica è la scienza di Internet Cos è l informatica? L informatica è la scienza della rappresentazione e dell elaborazione dell informazione L informatica è lo studio degli algoritmi: delle loro proprietà formali e matematiche delle loro realizzazioni hardware delle loro realizzazioni linguistiche delle loro applicazioni F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 9 F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 10 Che cos è un algoritmo? Esempi di algoritmi Ricetta di cucina 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. Sequenza di operazioni per registrare un programma con un videoregistratore Sequenza di operazioni per montare una tenda Sequenza di operazioni per moltiplicare due numeri F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 11 F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 12

Un algoritmo ben scritto La ricetta per cuocere 100 g di pasta: Un algoritmo per guadagnare in borsa 1. Metti 1l 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 il tempo di cottura 8. Versa la pasta nell acqua bollente 9. Aspetta il tempo di cui al punto 7. 10. Scola la pasta 11. Fine F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 13 1. Se le azioni sono scese al punto che non possono far altro che salire, compra 2. Se le azioni sono salite al punto che non possono far altro che scendere, vendi 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. F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 14 I due ubriachi 1. Siccome Peppe è ubriaco, Ciro lo accompagna a casa 2. Siccome Ciro è ubriaco, Peppe lo accompagna a casa 3. Siccome Peppe è ubriaco, Ciro lo accompagna a casa Riassumendo. L algoritmo per vincere in borsa non è ben ordinato è ambiguo L algoritmo dei due ubriachi non impiega un tempo finito non produce un risultato 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. F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 15 F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 16

Scrivere un algoritmo La ricerca del giusto algoritmo per la soluzione di un dato problema è la parte più creativa del lavoro di un informatico. Ogni algoritmo può essere scomposto in tre tipi fondamentali di operazioni: Operazioni sequenziali Operazioni condizionali Operazioni iterative F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 17 Formalizzazione del concetto di algoritmo: perche? L obiettivo e la costruzione di uno o piu mezzi di calcolo in grado di eseguire operazioni primitive (ovvero effettivamente calcolabili). Un mezzo di calcolo che esegue operazioni primitive permette di automatizzare una soluzione di un problema espressa da un algoritmo. La soluzione di un problema espressa da un algoritmo costituito da sequenze di operazioni primitive puo essere automatizzata Programma: la realizzazione di uno o piu algoritmi mediante sequenze di operazioni primitive comprensibili all esecutore F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 18 Automatizzare i calcoli I primi mezzi automatici di calcolo compaiono nel XVII secolo ad opera di Pascal e Leibniz. Funzionano sulla base di ruote dentate. Il primo programma 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. La Pascalina La macchina di Leibniz F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 19 Museo della Seta, S.Leucio (CE) F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 20

Il primo calcolatore Il primo progetto di un calcolatore vero e proprio, capace di eseguire programmi, si deve a Charles Babbage (1830) L Analytic engine sfruttava le schede perforate di Jacquard, e una sofisticatissima tecnica meccanica già utilizzata nella precedente Difference engine. I primi calcolatori elettronici Motivati principalmente da esigenze belliche i primi grandi calcolatori elettronici a valvole furono realizzati dalle maggiori potenze in conflitto nel corso degli anni 40. ENIAC: 18000 valvole 30 m lunghezza 30 tonnellate F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 21 F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 22 Il calcolatore moderno 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. La macchina di Von Neumann Lo schema della macchina di Von Neumann, modello sul quale si basano praticamente tutti i moderni computer è basato su quattro elementi fondamentali: 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 La memoria L unità aritmetico logica (ALU) L unità di controllo Le unità di Ingresso/Uscita (I/O) Processore F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 23 F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 24

MAR Memory Access Register Indirizzo 0 1 2 La memoria RAM Contenuto Dato o istruzione Dato o istruzione Dato o istruzione Registro F/S MDR Memory Data Register Operazioni possibili: Fetch(indirizzo) Store(indirizzo,valore) Dati e istruzioni sono codificati Le unità di I/O Dispositivi di interfaccia utente: tastiera, monitor, mouse Dispositivi di comunicazione: porte e dispositivi ad esse connessi (stampanti, modem ) Dispositivi di memoria di massa: (Hard disk, Floppy disk, CDROM, DVD) Tempi caratteristici di accesso: diversi ordini di grandezza più lenti della memoria RAM Interrupt Dati Controllore di I/O Buffer Controllo I/O F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 25 F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 26 L unità aritmetico logica: ALU Il cuore calcolante del computer: effettua un insieme finito e predeterminato di operazioni matematiche e logiche. Gli operandi vengono letti da registri in ingresso, e il risultato dell operazione è scritto su un registro in uscita. Il registro di stato (SR) riporta il segno del risultato e la presenza di riporto o di una condizione di errore. Registro 00 Registro 01 Registro 15 ALU Linee di selezione F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 27 SR L unità di controllo (I) Struttura di una istruzione in linguaggio macchina: Codice operativo Indirizzo 1 Indirizzo 2 Esempio: ADD X,Y (Y=X+Y) Ciclo di esecuzione di un programma: Instruction fetch Decodifica Esegui F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 28

L unità di controllo (II) Riassumendo Program Counter (++) Registro istruzioni (IR) Codice op. Indirizzo 1-Indirizzo N La struttura di Von Neumann permette di calcolare una sequenza di istruzioni opportunamente codificate e memorizzate e di controllare il flusso dell esecuzione. La gestione dell I/O è delegata a opportuni controllori per ottimizzare le prestazioni. Decodificatore di istruzione Memoria, ALU,controllori I/O La condizione chiave per la realizzazione del calcolatore è disporre di un sistema efficiente e affidabile di codifica dell informazione, ovvero dei dati e delle istruzioni che devono essere via via eseguite. F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 29 F. Ambrosino/E. Vardaci Corso di Informatica A.A. 2004-2005 30