Fondamenti di Informatica - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

Fondamenti di Informatica

Description:

Title: PowerPoint Presentation Last modified by: Simona Colucci Created Date: 1/1/1601 12:00:00 AM Document presentation format: On-screen Show Other titles – PowerPoint PPT presentation

Number of Views:96
Avg rating:3.0/5.0
Slides: 23
Provided by: poli117
Category:

less

Transcript and Presenter's Notes

Title: Fondamenti di Informatica


1
1. Introduzione al corso
Ing. Simona Colucci
2
Informazioni utili
  • Ing. Simona Colucci
  • Contatti
  • SisInfLab. Dipartimento di Elettrotecnica ed
    Elettronica(DEE)
  • mailto coluccisimona_at_gmail.com Tel 0805963515
  • http//sisinflab.poliba.it/colucci
  • Ricevimento studenti
  • Mercoledì 1130/1330

3
Modalità desame
  • Prova scritta
  • - Composta di una parte teorica e di una
    applicativa
  • - Obbligatoria per il superamento dellesame
  • - Sostituibile dal superamento di entrambe le
    prove di esonero dallo scritto da tenersi
    durante il corso
  • Prova orale
  • - Facoltativa con il superamento della prova
    scritta

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

5
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

6
Programma
  • Lezioni frontali (5 crediti, 40 ore)
  • Architettura dei calcolatori (4 ore)
  • Codifica binaria dellinformazione, algebra di
    Boole (4 ore)
  • Algoritmi e Programmazione Strutturata (2 ore)
  • Codifica degli algoritmi in linguaggio C (12 ore)
  • Funzioni e procedure (4 ore)
  • Programmazione ricorsiva (2 ore)
  • Gestione dei file (2 ore)
  • Il sistema operativo(4 ore)
  • Le Reti di Calcolatori(4 ore)
  • Esercitazioni in aula (1 Credito, 16 ore)
  • Progettazione di Algoritmi (2 ore)
  • Codifica di Algoritmi in Linguaggio C (6 ore)
  • Progettazione e Codifica Algoritmi di Ordinamento
    e Ricerca (4 ore)
  • Uso di funzioni e procedure e gestione dei file
    (4 ore)

7
Informatica
  • Definizione
  • Scienza della rappresentazione e
    dellelaborazione dellinformazione
  • 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 linformazione la loro
    teoria, analisi, progetto, efficienza,
    realizzazione e applicazione

8
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 esecutorees. 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

9
Esempi di algoritmi
  1. Lavaggio di capi resistenti in lavatrice
  2. Calcolo dellimposta IRPEF relativa a un
    contribuente, dato il reddito lordo e la tabella
    delle aliquote
  3. Calcolo della somma algebrica tra due numeri
    relativi utilizzando le operazioni di somma e
    differenza tra numeri senza segno
  4. Calcolo del Massimo Comun Divisore(M.C.D.)

10
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

11
Esempio 2
  • Problema Calcolo dellimposta 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
  • - I10 di R
  • - Se Rgt3600 II12(R-3600)
  • - Se Rgt7200 II5(R-7200)
  • - Se Rgt15000 II7(R-15000)
  • - Se Rgt30000 II7(R-30000)
  • - Se Rgt75000 II5(R-75000)
  • - Se Rgt150000 II5(R-150000)
  • - I è limposta risultante

Inizio-fascia() Fine_fascia () Aliquota ()
O 3600 10
3600.01 7200 22
7200.01 15000 27
15000.01 30000 34
30000.01 75.000 41
75000.01 150000 46
150000 51
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
    laddendo di modulo maggiore.
  • Algoritmo
  • - acquisizione dei due numeri a,b
  • - se a,b sono concordi sab
  • - se a,b sono discordi
  • - se altb si scambiano i valori di a e b
  • - sa-b
  • - la somma ha il segno di a e modulo s

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 bgta 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

14
Flusso di controllo
  • Lordine 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 lesecuzione dipende
    da una condizione
  • - istruzioni di controllo esprimono le
    condizioni da cui dipende lesecuzione 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
    unistruzione elementare

15
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

16
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 dellesecuzione con ellissi

Condizione?
vero
falso
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

18
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

19
Hardware
  • Insieme di elementi funzionali
  • Unità di elaborazione o processore
  • esegue i programmi
  • Memoria centrale
  • memorizza dati e programmi per il funzionamento
    dellelaboratore
  • capacità limitata
  • volatile
  • rapido acceso allinformazione
  • Memoria secondaria (o di massa)
  • capacità significativa
  • persistente
  • accesso allinformazione lento
  • Bus di sistema
  • collega gli elementi funzionali consentendo lo
    scambio di dati
  • Unità periferiche
  • fanno comunicare il calcolatore con lambiente
    esterno

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

21
Software
  • SW di base
  • dedicato alla gestione dellelaboratore
  • 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 informaticotrasportabile

22
Sistema Operativo
  • Funzioni
  • Interpreta ed esegue comandi elementari
  • Organizza le risorse della macchina
  • Gestisce laccesso alla rete
  • Sia che sia venduto dal costruttore del sistema
    informatico che realizzato da ditte di SW, il SO
    non può essere modificato dallutente nelle sue
    istruzioni ed è necessario come tramite duso tra
    la macchina fisica e lutente
  • 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
Write a Comment
User Comments (0)
About PowerShow.com