Principali infrastrutture hardware: processore, memorie, dispositivi di I/O. Algebre di Boole e loro uti-lizzo nella progettazione di circuiti. Sistemi di numerazione e aritmeti-ca binaria. Analisi di un problema e definizione dell'algoritmo di riso-luzione. Linguaggi di programma-zione e codifica di istruzioni e dati. Programmazione in C: dati e istru-zioni; funzioni di I/O; strutture di controllo del flusso; array e strin-ghe; funzioni; puntatori. Esercitazioni in laboratorio.
D. Sciuto, G. Buonanno, L. Mari, Introduzione ai sistemi informatici, McGraw Hill.
K. N. King, Programmazione in C, Apogeo.
L. M. Barone, E. Marinari, G. Organtini, F. Ricci-Tersenghi, Programmazione Scientifica, Pearson Education
Obiettivi Formativi
Il corso si propone di avviare lo studente ad alcune delle principali tematiche dell'informatica, con particolare riferimento alla pro-grammazione. Al termine del cor-so, lo studente avrà acquisito un linguaggio, dei metodi e delle tec-niche che gli permetteranno di comprendere e risolvere semplici problemi di natura informatica.
Prerequisiti
Corsi vincolanti: Nessuno.
Corsi raccomandati: Nessuno.
Metodi Didattici
CFU: 6
Numero di ore totali del corso: 150
Numero di ore relative alle attività in aula: 24
Numero di ore relative ad attività di laboratorio (lezioni in laborato-rio): 24
Altre Informazioni
Leonardo Lanzi
Orario di ricevimento: una volta a settimana durante il corso, su appuntamento nella parte restante dell'anno.
Dipartimento di Fisica e Astronomia, Via G. Sansone 1, 50019, Sesto Fiorentino (FI), tel. 0554572053. Email:leonardo.lanzi@unifi.it
Simone Landi
Orario di ricevimento: Per appuntamento contattando il docente tramite e-mail o telefono. Dipartimento di Fisica e Astronomia,
Sezione di Astronomia e Scienza dello Spazio
Largo E. Fermi 2, 50125 Firenze
Tel: +39 055 205 5224
Email: simone.landi@unifi.it
Sito web:
e-l.unifi.it
Modalità di verifica apprendimento
Prova scritta e prova di laboratorio
Programma del corso
Problemi di elaborazione dell'informazione e concetto intuitivo di algoritmo. Le principali infrastrut-ture hardware: il processore e la sua struttura, la memoria centrale e le memorie di massa, le principali periferiche e dispositivi di I/O.
Fondamenti di architettura degli elaboratori: cenni di teoria delle algebre di Boole, utilizzo dell'alge-bra di Boole nella progettazione di circuiti combinatori. Sistemi di nu-merazione e aritmetica binaria. Analisi di un problema e definizio-ne dell'algoritmo di risoluzione. Linguaggi di programmazione e codifica delle istruzioni e dei dati. Concetti generali di programma-zione. Introduzione alla program-mazione in C: dati e istruzioni; funzioni di input/output; strutture di controllo: flusso sequenziale, selezione e iterazione; array e stringhe; funzioni; puntatori. Esercitazioni in laboratorio.