Programma del Corso


Docente: Dott. M. Sitta

Impegno: 8 ore di lezione e 24 ore di esercitazioni in laboratorio

CFU: 4

Scopo del corso: apprendimento dei concetti fondamentali sul calcolatore e sui sistemi operativi. Elementi di linguaggio C.

Prerequisiti richiesti: conoscenze di base di matematica.

Lezioni in aula:
Numerazione decimale, binaria, esadecimale. Rappresentazione interna dei numeri decimali. Generalità di un calcolatore numerico (CPU, bus, memoria volatile e memoria di massa, memorie RAM e ROM, periferiche di input/output). Files, directory, programmi eseguibili. Sistemi operativi (scopo di un OS, gestione delle periferiche). Programma sorgente, oggetto, eseguibile. Compilazione e link. Libreria di programmi. Programmazione procedurale e a oggetti. Un esempio: il linguaggio C. Comunicazioni fra calcolatori. Protocolli di rete (Ethernet, TCP/IP).

Laboratorio:
1. Esercitazione pratica di Unix
2. Struttura di un programma C. Variabili e tipi. Assegnazioni e operazioni tra variabili.
3. Stringhe di caratteri. Input/output dei dati; formato di stampa.
4. Controllo del flusso del programma. Istruzioni sotto condizione. Cicli ripetuti di istruzioni.
5. Funzioni e sottoprogrammi; parametri e valori di ritorno di una funzione.

Testi:
M. Sitta, Elementi di Informatica per Fisici (dispense del Corso)

Testi consigliati per consultazione e approfondimenti:
M. G. Sobel, A practical guide to UNIX System V, ed. Benjamin/Cumming
S. Oualline, Practical C Programming, ed. O'Reilly and Associates
B. W. Kernighan, D. M. Ritchie, Linguaggio C, ed. Jackson Libri
W. Kinzel, G. Reents, Physics by Computer, ed. Springer
W. R. Gibbs, Computation in Modern Physics, ed. World Scientific