POLITECNICO DI MILANO  Sede di Milano - Campus Leonardo
                       

Vecchio Ordinamento

FONDAMENTI DI INFORMATICA

cod: AG0200

(Corsi di Laurea in Ingegneria Ambiente e Territorio, Civile, Edile, Elettrica, Gestionale, Nucleare)

Proff. Andrea Bonarini, Franca Garzotto, Maristella Matera, Licia Sbattella, Letizia Tanca

Programma

1) CONCETTI INTRODUTTIVI
Presentazione dell'informatica e dei calcolatori elettronici. Concetto di algoritmo e linguaggi per descrivere algoritmi. L'esecutore calcolatore. La rappresentazione binaria dell' informazione e relativi standard.
2) ARCHITETTURE HARDWARE E SOFTWARE.
Struttura di un sistema di calcolo - Unitą funzionali e bus. Il modello di Von Neumann. L'unitą centrale e i suoi registri, unitą logica aritmetica e unitą di controllo. La memoria di lavoro. Interfaccia di I/O. Unitą periferiche e loro funzionalitą e caratteristiche.
Cenni di algebra booleana: variabili, operatori ed espressioni. Il linguaggio del calcolatore: istruzioni, modalitą di indirizzamento, linguaggio simbolico. Esecuzione di istruzioni
Il sistema operativo. Funzioni e tipologie. Macchine virtuali e struttura a livelli. Stati di funzionamento del processore, nucleo e gestione dei processi, gestione della memoria, il file system, l'interprete comandi e l'interfaccia utente.
3) LA PROGRAMMAZIONE
Programmazione in linguaggio di alto livello - Il linguaggio C: fondamenti. Strutture di controllo. Tipi di dati. Vettori, strutture, puntatori. Struttura dei programmi. Funzioni e procedure. Visibilitą degli identificatori. Strutture dati dinamiche: cenni. Ciclo di vita del software. Definizione delle specifiche, progetto, codifica, traduzione, collegamento, caricamento, esecuzione, correzione e manutenzione dei programmi. Obiettivi e metodologie della fase di progetto: scomposizione funzionale e scomposizione in moduli. Progetto di algoritmi e di strutture dati. Qualita' del software.
4) APPLICAZIONI E ARGOMENTI MONOGRAFICI
Cenni alla trasmissione dati e alle reti: servizi di Internet. Gestione di archivi. Software e modelli per la gestione di basi di dati: il linguaggio SQL.

Modalitą d'esame

L'esame si basa su una prova scritta consistente di due parti: una parte sulle tematiche 1, 2 e 4, e una parte in cui e' richiesto di sviluppare un programma in C (tematica 3). Ognuna delle due parti e' valutata fino a un massimo di 33 punti e deve essere sufficiente (almeno 18 punti). Il voto complessivo viene calcolato come media dei voti ottenuti nelle due parti. Una media superiore a 30 da' luogo al 30 e lode.

Libro di testo

 S. Ceri, D. Mandrioli, L. Sbattella: Informatica arte e mestiere, McGraw-Hill Libri Italia, 1999 (con esclusione dei capitoli 12, 17 e 19)    

 

Eserciziari

C. Bellettini, S. Filippi, L. Sbattella: Linguaggio C. Esercizi e temi d'esame risolti, II edizione, Esculapio,2000.
Bisogni, Borney, Mezzalira, "Programmare con il linguaggio C", Spiegel.

 

Testi di consultazione

S. Ceri, D. Mandrioli, L. Sbattella: The Art and Craft of Computing, Addison Wesley

A. Bellini, A. Guidi, Linguaggio C: guida alla programmazione, McGraw-Hill Libri Italia,       

A. Kelley, I.Pohl: C: didattica e programmazione, Addison Wesley, 1996.

H. Schildt: Turbo C/C++. The complete reference, Osborne-McGraw-Hill, 1995.

H.M. Deitel, P. J. Deitel. "C: corso completo di programmazione", Apogeo, 2000.

Altro materiale didattico

Ambiente Turbo C 1.01 (funziona sotto DOS)

Copiare i due file compressi TC10a.zip e TC10b.zip (entrambi di circa 1M) nella stessa directory prima di scompattarli (ad esempio nella directory C:\Compilatore). Decomprimere i due file (ad esempio nella directory C:\TC). Creare due nuove directory LIB e INCLUDE all'interno della directory appena creata (C:\TC) e spostare tutti i file con estensione .lib nella directory LIB e i file con estensione .h nella directory INCLUDE. Per poter utilizzare il compilatore lanciare l'eseguibile tc.exe (digitare da una shell del dos il comando C:\TC\tc.exe o cliccare sull'icona del file tc.exe da gestione risorse). Dal menù Options di Turbo C selezionare l'opzione Directories per riconfigurare opportunamente i percorsi di ricerca delle librerie. Se la directory dove si e' installato il Turbo C è C:\TC, in Include Directories scrivere C:\TC\INCLUDE mentre in Library Directories scrivere C:\TC\LIB. A questo punto, sempre dal menù Options salvare la configurazione mediante l'opzione Save. Per far invece funzionare il Debugger del Turbo C accertarsi che nell'opzione Debugger del menù Options, Source Debugging sia a ON. Inoltre, nell'opzione Compiler del menù Options selezionare Code Generation, cliccare sul bottone in basso a sinistra chiamato More e selezionare in Options l'opzione Debug info in OBJs (deve avere una X tra le parentesi quadre). Ora il compilatore e il debugger dovrebbero funzionare lanciando l'eseguibile tc.exe nella directory C:\TC !

Servizi di tutorato

Presso la bacheca della Segreteria dei Servizi di Tutorato, al primo piano del Trifoglio vengono esposti, a partire dal 15 ottobre, avvisi relativi al tutorato di programmazione tenuto da docenti e da studenti esperti DAL 17/10/2001 AL 13/02/2002 (con esclusione dei giorni di vacanza e di sospensione dell'attività didattica come da calendario accademico), il MERCOLEDÌ dalle 17.15 alle 19.15 Laboratorio di Calcolo - lab. n. 2 al Dipartimento di Elettronica e Informazione (piano seminterrato) un docente sarà a disposizione degli studenti del vecchio ordinamento (che stanno preparando l'esame di Fondamenti di Informatica Unico) e degli studenti del nuovo ordinamento (che stanno preparando il primo esame di Informatica) per domande e problemi inerenti la PROGRAMMAZIONE IN LINGUAGGIO C