La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

1. Introduzione al corso Ing. Simona Colucci

Presentazioni simili


Presentazione sul tema: "1. Introduzione al corso Ing. Simona Colucci"— Transcript della presentazione:

1 1. Introduzione al corso Ing. Simona Colucci
Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

2 Informazioni utili Ing. Simona Colucci: Contatti:
SisInfLab. Dipartimento di Elettrotecnica ed Elettronica(DEE) mailto: Tel: Ricevimento studenti: Mercoledì 11:30/13:30 Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

3 - Composta di una parte teorica e di una applicativa
Modalità d’esame Prova scritta: - Composta di una parte teorica e di una applicativa - Obbligatoria per il superamento dell’esame Prova orale: - Facoltativa con il superamento della prova scritta Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

4 Composizione del corso
Argomenti teorici di base - oggetto delle lezioni in aula - verificati tramite quesiti ed esercizi della prova scritta Programmazione in linguaggio C - oggetto delle lezioni e delle esercitazioni in aula - verificata tramite problemi della prova scritta Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

5 Bellini, Guidi. Linguaggio C. Mc-Graw-Hill, 2006
Libri di testo Testi di riferimento: Ceri, Mandrioli, Sbattella. Informatica: arte e mestiere. McGraw-Hill, 2008 Bellini, Guidi. Linguaggio C. Mc-Graw-Hill, 2006 Kerningham, Ritchie. Linguaggio C. Jackson Libri, 1989 Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

6 Lezioni frontali (5 crediti, 40 ore):
Programma Lezioni frontali (5 crediti, 40 ore): Architettura dei calcolatori (4 ore) Codifica binaria dell’informazione, algebra di Boole (4 ore) Algoritmi e Programmazione Strutturata (4 ore) Codifica degli algoritmi in linguaggio C (14 ore) Funzioni e procedure (6 ore) Programmazione ricorsiva (2 ore) Gestione dei file (2 ore) Il sistema operativo(4 ore) Esercitazioni in aula (1 Credito, 16 ore) Progettazione di Algoritmi (2 ore) Codifica di Algoritmi in Linguaggio C (4 ore) Progettazione e Codifica Algoritmi di Ordinamento e Ricerca (4 ore) Uso di funzioni e procedure e gestione dei file (6 ore) Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

7 Scienza della rappresentazione e dell’elaborazione dell’informazione
Informatica Definizione Scienza della rappresentazione e dell’elaborazione dell’informazione Definizione Association of Computing Machinery(ACM) Studio sistematico degli algoritmi(sequenze precise di operazioni comprensibili e perciò eseguibili da uno strumento automatico) che descrivono e trasformano l’informazione: la loro teoria, analisi, progetto, efficienza, realizzazione e applicazione Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

8 Proprietà degli algoritmi:
Concetto di algoritmo Sequenza di passi, definiti con precisione, che portano alla realizzazione di un compito. E’ essenziale che un algoritmo sia comprensibile al suo esecutore:es. il calcolatore(privo di buon senso) esegue algoritmi prodotti e codificati dagli informatici in programmi Proprietà degli algoritmi: - correttezza: capacità di arrivare alla soluzione del compito cui è preposto, senza difettare di alcun passo fondamentale - efficienza: capacità di arrivare alla soluzione del compito cui è preposto nel modo più veloce possibile e/o usando la minima quantità di risorse fisiche, compatibilmente con la sua correttezza Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

9 Lavaggio di capi resistenti in lavatrice
Esempi di algoritmi Lavaggio di capi resistenti in lavatrice Calcolo dell’imposta IRPEF relativa a un contribuente, dato il reddito lordo e la tabella delle aliquote Calcolo della somma algebrica tra due numeri relativi utilizzando le operazioni di somma e differenza tra numeri senza segno Calcolo del Massimo Comun Divisore(M.C.D.) Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

10 -lavatrice Problema: Lavaggio di capi resistenti in lavatrice
Esempio 1 Problema: Lavaggio di capi resistenti in lavatrice Soluzione informale: lavatrice + programma “cotone 90” Algoritmo: Esecuzione in stretta sequenza dei seguenti passi: -lavatrice -ammollo -prelavaggio -lavaggio -candeggio -risciacquo -ammorbidente -centrifuga Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

11 Esempio 2 Problema: Calcolo dell’imposta IRPEF relativa a un contribuente, dato il reddito lordo e la tabella delle aliquote Soluzione informale: data la tabella delle aliquote relative alle fasce di reddito e dato il reddito lordo, si applicano progressivamente le aliquote al reddito Algoritmo: - acquisire reddito lordo - I=10% di R - Se R>3600 I=I+12%(R-3600) - Se R>7200 I=I+5%(R-7200) - Se R>15000 I=I+7%(R-15000) - Se R>30000 I=I+7%(R-30000) - Se R>75000 I=I+5%(R-75000) - Se R> I=I+5%(R ) - I è l’imposta risultante Inizio-fascia(€) Fine_fascia (€) Aliquota (%) O 3600 10 7200 22 15000 27 30000 34 75.000 41 150000 46 51 Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

12 Esempio 3 Problema: Calcolo della somma algebrica tra due numeri relativi utilizzando le operazioni di somma e differenza tra numeri senza segno Soluzione informale: si confrontano i segni dei due operandi; nel caso di numeri concordi si effettua la somma dei moduli e il risultato è concorde con gli addendi; nel caso di numeri discordi si effettua la differenza tra modulo maggiore e minore e il risultato è concorde con l’addendo di modulo maggiore. Algoritmo: - acquisizione dei due numeri a,b - se a,b sono concordi |s|=|a|+|b| - se a,b sono discordi - se |a|<|b| si scambiano i valori di a e b - |s|=|a|-|b| - la somma ha il segno di a e modulo |s| Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

13 Esempio 4 Problema: Calcolo del Massimo Comun Divisore tra due numeri a,b : MCD(a,b) Soluzione di Euclide: “ogni divisore comune di a e b è divisore di a, b e del resto r della divisione tra a e b (a mod b), se questo non è nullo” Algoritmo: 1. acquisire due numeri a,b 2. se b>a scambiare a con b 3. se b= 0 MCD(a,b)=a a andare al passo 6 4. r= a mod b 5. sostituire a con b, b con r ed andare al passo 2 6. Fine Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

14 - istruzioni non condizionate
Flusso di controllo L’ordine di esecuzione delle operazioni elementari è determinante per la soluzione del problema Le operazioni elementari(passi di algoritmi) vengono chiamate istruzioni nel linguaggio dei calcolatori e possono essere classificate in : - istruzioni non condizionate - istruzioni condizionate: l’esecuzione dipende da una condizione - istruzioni di controllo: esprimono le condizioni da cui dipende l’esecuzione delle istruzioni condizionate(dette pseudo-istruzioni perché controllano solo il flusso delle operazioni) Le istruzioni possono essere composte in blocchi o sequenze che risolvono sottoproblemi del problema principale e sono viste come un’istruzione elementare Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

15 Insieme di istruzioni di controllo e controllate:
Costrutto Insieme di istruzioni di controllo e controllate: - costrutto condizionale: insieme di condizione e istruzioni condizionate - costrutto iterativo: insieme di istruzioni la cui esecuzione viene ripetuta sotto il controllo di opportune istruzioni di controllo Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

16 -condizioni(scelta tra due possibilità) con rombi
Diagrammi di flusso FLOW CHART: Formalismo grafico per rappresentare la sequenza(flusso)di istruzioni o operazioni elementari di un algoritmo: operazioni(semplici o composte, condizionate o non condizionate) con rettangoli -condizioni(scelta tra due possibilità) con rombi flusso (sequenza di esecuzione o controllo) con segmenti orientati che uniscono i blocchi inizio e fine dell’esecuzione con ellissi Condizione? vero falso Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

17 Linguaggi di Programmazione
Linguaggi per la codifica di algoritmi: scrittura sotto forma di programmi che possano essere compresi da un elaboratore Dal linguaggio della macchina ai linguaggi di alto livello: sforzo di traduzione da linguaggio naturale a linguaggio macchina sempre più affidato alla macchina stessa Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

18 Classificazione a livello generico delle componenti:
Sistema Informatico Oggetto complesso,che può assumere nature molto differenti, costituito da molte parti che interagiscono tra loro per eseguire algoritmi Classificazione a livello generico delle componenti: Hardware: componenti fisici del sistema Software: programmi eseguiti dal sistema Il confine tra HW e SW è piuttosto sfumato se si pensa che le stesse funzioni possono essere svolte a seconda dei casi da circuiti e dispositivi HW o da particolari microprogrammi(firmware) definiti dal costruttore del calcolatore Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

19 Insieme di elementi funzionali: Unità di elaborazione o processore:
Hardware Insieme di elementi funzionali: Unità di elaborazione o processore: esegue i programmi Memoria centrale: memorizza dati e programmi per il funzionamento dell’elaboratore capacità limitata volatile rapido acceso all’informazione Memoria secondaria (o di massa): capacità significativa persistente accesso all’informazione lento Bus di sistema: collega gli elementi funzionali consentendo lo scambio di dati Unità periferiche: fanno comunicare il calcolatore con l’ambiente esterno Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

20 Esempio di HW di sistema informatico
Personal computer: elaboratore dedicato ad un solo utente Corpo contenente: unità di elaborazione memoria centrale memoria di massa: informazione organizzata in file Disco fisso(hard disk): inamovibile e di elevata capacità Floppy disk, chiavi USB, dischi ottici(compact disk o CD-ROM o DVD) Tastiera mouse e video collegati col corpo centrale Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

21 SW di base SW applicativo: Software
dedicato alla gestione dell’elaboratore opera direttamente al di sopra di HW e firmware Esempi: SISTEMA OPERATIVO Sistema di gestione di basi di dati Protocolli di comunicazione: garantiscono la corretta comunicazione sui canali di trasmissione che trasportano segnali(tipicamente elettrici), garantendo la trasmissione dei dati tra elaboratore e terminali o tra elaboratori collegati in rete SW applicativo: dedicato alla realizzazione di specifiche esigenze applicative utilizza linguaggi di alto livello opera al di sopra del SW di base non risente delle caratteristiche architetturali del sistema informatico:trasportabile Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A

22 Complessità crescente con quella del sistema informatico:
Sistema Operativo Funzioni: Interpreta ed esegue comandi elementari Organizza le risorse della macchina Gestisce l’accesso alla rete Sia che sia venduto dal costruttore del sistema informatico che realizzato da ditte di SW, il SO non può essere modificato dall’utente nelle sue istruzioni ed è necessario come tramite d’uso tra la macchina fisica e l’utente Complessità crescente con quella del sistema informatico: In sistemi multi-utente il SO distribuisce le parti del calcolatore tra i vari utenti in maniera apparentemente “dedicata” Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A


Scaricare ppt "1. Introduzione al corso Ing. Simona Colucci"

Presentazioni simili


Annunci Google