INFORMAZIONI SU

Fondamenti di informatica

Programma dell'insegnamento di Fondamenti di informatica - cdl in Ingegneria Civile

Docente

prof. Andrea FUSIELLO

Crediti

6 CFU

Obiettivi formativi specifici

Il corso intende mettere lo studente in grado di conoscere fondamenti, metodi e tecnologie relative ai sistemi di elaborazione delle informazioni. Inoltre mira a presentare i principi e le tecniche della programmazione, fornendo nel contempo uno strumento attivo che possa trovare impiego nella soluzione di problemi computazionali relativi alle discipline ingegneristiche curriculari.

Propedeticità obbligatorie:

Nessuna

Competenze acquisite
Principi operazionali dei calcolatori. Elementi di rappresentazione dell'informazione (sia testuale che multimediale). Principi generali alla base delle reti di calcolatori e di Internet. Approccio algoritmico alla soluzione di problemi Concetti generali di programmazione. Soluzione di problemi tramite programmazione in MATLAB.

 

Programma

Introduzione all'informatica: Introduzione al corso. Hardware e software. Breve storia del calcolo automatico. (2 ore)
Codifica dell'Informazione: Sistema binario, numeri in base N, codifiche ASCII e Unicode. Cenni alla compressione. (4 ore)
Architettura dell'elaboratore: Elementi di logica booleana e circuiti logici. Principi operazionali degli elaboratori, modello di Von Neumann, ciclo fetch/execute, memoria, periferiche. (4 ore)
Sistemi operativi: Concetto di macchina virtuale, componenti del S.O., compilatori ed interpreti. (4 ore)
Reti di calcolatori e WWW: Introduzione alle reti: commutazione di pacchetto, TCP/IP, DNS. Il World Wide Web ed il paradigma client-server. (4 ore)
Algoritmi: Proprietà dell’algoritmo, esempio: ricerca lineare e dicotomica. Cenni complessità computazionale e di computabilità (4 ore)
Introduzione alla programmazione in MATLAB: Introduzione al MATLAB, variabili, tipi di dati, scripts, ambiente di sviluppo (4 ore)
Vettori e array: Collezioni di oggetti omogenei in MATLAB (4 ore)
Strutture di controllo: Strutture di selezione (if-then-else) e di iterazione (for, while) (4 ore)
Funzioni e ricorsione: Implementazione delle funzioni in MATLAB, passaggio dei parametri, variabili, incapsulamento. Pila di attivazione e ricorsione (4 ore)
Stringhe: Funzioni per la manipolazione delle stringhe in MATLAB (2 ore)
Strutture e Cell Arrays: Collezioni di oggetti disomogenei in MATLAB (2 ore)
File I/O: Funzioni per la lettura e scrittura da e su file (2 ore)
Matrici: Introduzione al calcolo matriciale in MATLAB (4 ore)
Immagini e suoni: Formati delle immagini, semplici elaborazioni. Elaborazione del suono nel dominio temporale e frequenziale, FFT (cenni). (4 ore)
Metodi numerici: Equazioni non-lineari (una variabile), interpolazione, regressione lineare, integrazione numerica (4 ore)
Algoritmi di ordinamento: Insertion Sort, Bubble sort, Quick Sort, Merge Sor. (4 ore)

Bibliografia

- Prima parte: appunti del docente
- Parte MATLAB: D.M. Smith. Engineering Computation with MATLAB. 3rd ed. Pearson, 2013

 

Modalità d'esame

prova scritta e orale