Informatica

espandiInformatica

Codice identificativo insegnamento: 083407
Programma sintetico: il corso si propone di fornire una visione d'insieme delle potenzialita' offerte dall'analisi e dalla modellazione informatica di problemi reali, e di formare gli studenti a comprendere i principi per un possibile futuro utilizzo. Il corso presenta i concetti fondamentali della programmazione con riferimento al linguaggio C, e descrive brevemente le caratteristiche dei sistemi informatici enfatizzandone gli aspetti di integrazione. Esso si propone inoltre di formare gli studenti a una conoscenza sufficientemente approfondita dei principi e dell'uso di un applicativo di interesse specifico per il corso di studio a supporto del calcolo numerico. Piu' in dettaglio, gli argomenti principali che verranno trattati sono: i concetti fondamentali della programmazione (algoritmi e progettazione per raffinamenti successivi), i fondamenti e le tecniche di programmazione in C (struttura di un programma, tipi e istruzioni, sottoprogrammi, la gestione dei file), i concetti introduttivi di programmazione avanzata (le strutture dati dinamiche), la composizione e organizzazione dei sistemi informatici, l'introduzione a una piattaforma di sviluppo per sistemi di acquisizione e dati e controllo.

1. Concetti introduttivi dell'informatica. Panoramica storica e contenuti dell'informatica. Risoluzione automatica di problemi: algoritmi, linguaggi di rappresentazione, catena di programmazione. Calcolatore digitale programmabile: elementi base della tecnologia elettronica. Natura e rappresentazione delle informazioni (numerica, alfanumerica, di immagini, multimediale).

2. Concetti fondamentali della programmazione. Introduzione agli algoritmi: rappresentazione del flusso di controllo. Introduzione alla progettazione per raffinamenti successivi.

3. Fondamenti di programmazione in linguaggio C - Meccanismi di astrazione. Struttura di un programma C. Astrazione di dato mediante i tipi di dato (numerici, caratteri e stringhe, vettori, strutture, puntatori). Meccanismi strutturati per il controllo della sequenza di esecuzione. Le librerie standard del linguaggio C e le funzioni di ingresso e uscita.

4. Tecniche di programmazione. Il concetto di sottoprogramma: funzioni e procedure come astrazioni. Parametri, modalità di passaggio dei parametri, effetto di un sottoprogramma. Ambienti, visibilità e cenno al supporto di esecuzione. La gestione dei file. La struttura dell'ambiente di programmazione e la modularizzazione. Gestione dinamica della memoria.

5. Composizione e organizzazione dei sistemi informatici. Struttura di un calcolatore (unità funzionali e uso) e classificazione dei calcolatori. Introduzione alle funzioni di sistema operativo e al software di rete.

Esercizi:

 

Laboratori: