Programma
Programma del corso A.A. 2010/2011
Ing. Ambientale, Civile, Edile
INTRODUZIONE: significato di “informatica”; dati ed informazione; sistema di elaborazione; computer; hardware e software.
CODIFICHE DEI NUMERI: rappresentazione dell'informazione; sistema posizionale; alfabeto e base; numerazione in base b; conversione da base b a 10, da 10 a b, da 2 a 8, da 2 a 16; minimo e massimo rappresentabile di un numero N puro; somma, sottrazione, moltiplicazione divisione, scorrimento di un numero naturale; numeri relativi (rappresentazione modulo e segno, complemento ad 1, complemento a 2); minimo e massimo rappresentabili; somma, sottrazione, moltiplicazione e divisione di numeri relativi; numeri frazionari; conversione numeri frazionari da base b a 10, da 10 a b; rappresentazione di numeri reali; grandezze fondamentali (bit, byte, kilo, mega, giga).
ALTRE CODIFICE: CODIFICA DEI CARATTERI: ASCII standard ed esteso. CODIFICA DELLE IMMAGINI: bitmap (B/N, colori); concetto di palette; immagini vettoriali, dal video alla carta, dalla macchina fotografica alla carta. TECNICHE DI COMPRESSIONE: loseless e lossy. CODIFICA SEGNALI AUDIO: campionamento (teorema di Nyquist), quantizzazione, codifica. Compressione audio (MP3). CODIFICA SEGNALI VIDEO.
ARCHITETTURA DEL COMPUTER: macchina di von Neumann; CPU (ALU, Control Unit, clock, registri); memoria cache; memoria centrale; indirizzamento e caratteristiche delle memorie; altre memorie (ROM, PROM, EPROM); bus di sistema (dati, indirizzi, comandi). Linguaggio Assembly ed assemblatore.
DISPOSITIVI DI I/O: sequenziali ed accesso diretto. Interrupt. Nastri magnetici; dischi magnetici; CD; DVD. Laser. Porte di I/O. Monitor (CRT, LCD, LED, OLED, plasma).
PERFORMANCE: performance della cpu e dell’elaboratore. Indici di prestazione (MIPS, MFLOPS, SPECMARKS). Architettura CISC e RISC. Pipeline e processori superscalari.
SISTEMI OPERATIVI: kernel, file system, scheduler e multitasking, gestore memoria, memoria virtuale, interfaccia utente. Sistemi multi-utente, real-time e distribuiti.
ALGORITMO: la metafora dell’ufficio; definizione di problema, istanza, algoritmo; diagramma di flusso, programma, linguaggio di programmazione; proprietà degli algoritmi; risoluzione di un problema ed errori; diagrammi di flusso strutturati; equivalenza debole e forte; teorema di Böhm-Jacopini; teorema di Peterson-Kasami-Tokura.
STRUTTURE e PROGRAMMAZIONE: variabili e costanti, tipi di variabili elementari (booleani, caratteri, interi, reali e puntatori). Strutture dati (vettore, matrice, record, liste ed alberi). Linguaggi (macchina, a basso ed alto livello). Linguaggio strutturato ed ad oggetti. Esecuzione di un programma (interpretato e compilato). Creazione di un programma compilato (editing, compiler, linker e loader)
RICERCHE ED ORDINAMENTI: ricerca sequenziale. Ricerca binaria. Ordinamento di un vettore. Ricorsione.
CLASSIFICAZIONE COMPUTER: dal mainframe al personal (vantaggi/svantaggi). Informatica distribuita (vantaggi/svantaggi). Reti di computer (LAN, MAN, WAN). Topologia di reti LAN (a bus, ad anello, mista a stella).
MEZZI TRASMISSIVI (M.T.): M.T. elettrici (cavo coassiale e doppino). M.T. ottici (legge di Snell, f.o. multimodali e monomodali). M.T. elettromagnetici (wireless). WLAN.
INTERNETWORKING: modello ISO/OSI; layer, interfaccia, protocollo, peer process; header e trailer. Principali caratteristiche dei livelli.
INTERNET: TCP/IP. IP; indirizzamento IP, classi IP. Ethernet e MAC address. ARP. DNS. TCP; architettura client/server e porte di comunicazione.
MODEM e ROUTER: modulazione; modem (analogici e digitali). Router (firewall, DHCP)
POSTA ELETTRONICA: provider e mail server. Formato del messaggio (busta, intestazione e corpo); RFC 822; protocolli (POP, IMAP, SMTP); messaggi di testo; standard MIME; nuove funzionalità. Spedizione sicura (SSL, TLS); posta certificata (PEC); certificato digitale.
WWW: multimedialità, ipertesto e ipermedia; www (http, html); URL; linguaggi di marcatura; PHP. Plug-in; Java e javascript; data streaming. Cookies.
ALTRI SERVIZI: telnet/SSH, ftp/SCP, Newsgroup, Messaggistica istantanea, VoIP; RSS.
PROGRAMMAZIONE MATLAB Espressioni, operatori matematici e logici, variabili, vettori, matrici, strutture. Stringhe. Polinomi. Grafici. Input/Output a video. Espressioni condizionali (if, switch). Iterazioni (for, while). Funzioni. Variabili locali e globali. I/O con file excel. Celle.
Materiale didattito:
- Lucidi del corso;
- Dispense Matlab (ing. Zambon)
Testi di approfondimento:
- Manuali Matlab (pdf)