Fondamenti di Informatica (2021/22)
Schema della sezione
-
Attenzione!
Questa pagina non sarà più aggiornata. Per informazioni relative ai prossimi appelli e modalità d'esame del corso di Fondamenti di Informatica, a.a. 2021/22 (e precedenti), consultare la pagina web del corso dell'a.a. 2023/24.Scopo del corso è presentare i concetti fondamentali della logica, della architettura degli elaboratori (hardware e sistemi operativi), e dello sviluppo di pagine web. Il corso è diviso in due moduli: "Logica e Sistemi di Elaborazione" da 6 CFU e "Sistemi Operativi e Web" di 3 CFU. Quest'ultimo è ulteriormente diviso in due partizioni, a sconda dell'iniziale del cognome: A-L ed M-Z.Programma
Quello che segue è una bozza del programma dettagliato, diviso in aree tematiche. Per ogni area tematica trovate il nome del modulo o dei moduli corrispondenti. Il simbolo EN fa riferimento al corrispondente capito del libro di Irv Englander (vedi materiale didattico integrativo dell'area tematica di rappresentazione binaria dei dati) mentre PA indica il teso di Dario Palladino.
Logica (Logica e Sistemi di Elaborazione)
- Inferenze e ragionamenti (PA introduzione)
- Logica proposizionale
- Proposizioni semplici e composte (PA 1 introduzione, PA 2 introduzione)
- Connettivi vero-funzionali (PA 2.1 , PA 2.2)
- Forme proposizionali (PA 2.3)
- Tavole di verità delle forme proposizionali (PA 3.1)
- Tautologie e contraddizioni (PA 3.1, PA 3.2)
- Equivalenza e conseguenza logica (PA 4.1, 4.2, 4.3)
- Logica dei predicati
- Proposizioni semplici del 1° e del 2° tipo (PA 1.1 )
- Quantificatori
- Formule ben formate
- Sintassi e semantica formale della logica dei predicati
- Equivalenza e conseguenza logica
Rappresentazione Binaria dei Dati (Logica e Sistemi di Elaborazione)
- Sistemi di numerazione posizionali (EN 3)
- numeri interi e frazionari
- conversione tra basi
- operazioni aritmetiche: somma, differenza e prodotto
- base binaria, ottale ed esadecimale
- Rappresentazione dei dati numerici (EN 5)
- numeri interi positivi
- numeri interi con segno: modulo e segno, complemento a 2
- notazione scientifica e rappresentazione in virgola mobile
- rappresentazione little-endian vs big-endian
- numeri interi positivi
- Rappresentazione dei dati non numerici (EN 4)
- valori booleani singoli e a mappa di bit
- testo: set di caratteri, ASCII, ASCII esteso, Unicode
- immagini: immagini bitmap e vettoriali, compressione lossless e lossy, video
- audio: campionamento e quantizzazione, compressione lossless e lossy, file MIDI
- linguaggi di descrizione di pagina
Architettura e Sistemi Operativi (Logica e Sistemi di Elaborazione + Sistemi Operativi e Web)
- Architettura degli elaboratori
- CPU e memoria
- Architettura di von Neumann e sue estensioni
- Input/output
- Periferiche
- Il Little Man Computer (EN 6)
- Sistemi Operativi
- Struttura di un sistema operativo
- Interfaccia utente
- Gestione dei file
- Funzionamento interno
Linguaggi per il web (Sistemi Operativi e Web)
- Principali protocolli per il web
- Fondamenti di HTML e CSS
Docenti
Il modulo di "Logica e Sistemi Operativi" è tenuto dal prof. Gianluca Amato. Si rimanda alla pagina del profilo del docente per informazioni su come contattare il docente e sugli orari e modalità di ricevimento.
Il modulo di "Sistemi Operativi e Web" è tenuto dalla prof.ssa Francesca Scozzari.
Materiale didattico
Consultare la sezione specifica per ogni area tematica.
Modalità didattica
Il corso si terrà in modalità "blended", con studenti in presenza e studenti collegati sulla piattaforma Microsoft Teams. I team per lo svolgimento delle lezioni sono i seguenti:
- modulo di "Logica e Sistemi di Elaborazione"
- modulo di "Sistemi operativi e web A-L"
- modulo di "Sistemi operarivi e web M-Z"
Gli esami nella modalità a distanza (se previsti dal regolamento vigente al momento della sessione d'esame) si svolgereanno invece sul team per gli esami a distanza. - Inferenze e ragionamenti (PA introduzione)
-
L'esame consiste in una prova scritta obbligatoria ed in una prova orale opzionale (su richiesta del docente o dello studente).La prova scritta consiste in una serie di sei esercizi (o domande a risposta aperta) sul programma del corso, della durata di un'ora e mezza. Ogni quesito viene valutato da 0 a 5 punti, per un voto massimo della prova scritta di 30, che verrà rivalutato del 10% (in modo che il massimo effettivo sia di 33 punti). La prova si considera superata se il voto (rivalutato) è maggiore o uguale a 18. In tal caso l'esame può essere verbalizzato direttamente. Gli studenti che alla prova scritta ottengono una votazione insufficiente (minore di 18) ma maggiore o uguale a 15 possono sostenere una prova orale.
Lo studente che ha superato la prova scritta con votazione sufficiente può, su richiesta, sostenere una prova orale per provare ad aumentare il voto. Ovviamente il voto può anche diminuire (o, nei casi limite, si può essere bocciati). La prova orale può anche essere richiesta dai docenti.
Parziali
Sono previste cinque prove parziali. Ogni prova parziale ha un voto massimo di 5 punti e va a sostituire uno degli esercizi della prova scritta d'esame. Una prova parziale si considera superata con voto minimo di 2.5 punti (ma c'è una ecceziome per le prove di logica proposizionale e rappresentazione binaria dei dati). Chi ha superato una certa prova d'esame può evitare di svolgere il corrispondente esercizio alla prova finale: per quella prova verrà utilizzato invece il voto del parziale.- prova parziale su HTML e CSS, da svogere il 28 aprile 2022, della durata di 1h 15m. Ci saranno due turni: alle ore 9:00 e alle ore 11:00 (prenotatevi a vostra scelta).
- prove parziali di logica proposizionale e rappresentazione binaria dei dati, da svolgere il 2 maggio 2022, alle ore 11:00 in aula 9-11, della durata di 1h 30m. Se la somma delle due prove è di almeno 5 punti, esse si considerano superate anche se, singolarmente, il voto non raggiunge i 2 punti e mezzo.
- prova parziale su Little Man Computer e argomenti teorici di architettura e sistemi operativi, da svolgere il 25 maggio alle ore 9:00 in aula informatica, della durata di 1h30m.
È sempre possibile rinunciare al voto delle prove parziali. Per far ciò è sufficiente che, durante il compito, lo studente svolga l'esercizio per cui non intende usufruire della prova parziale. Facendo così, però, il voto di quella prova parziale è PER SEMPRE inutilizzabile. Le prove parziali sono valide per tutto l'anno accademico 2021/22.Per partecipare all prove parziali è necessario prenotarsi sul sito https://udaonline.unich.it/. - prova parziale su HTML e CSS, da svogere il 28 aprile 2022, della durata di 1h 15m. Ci saranno due turni: alle ore 9:00 e alle ore 11:00 (prenotatevi a vostra scelta).
-
Questa parte del corso si occupa di insegnare i fondamenti della logica matematica, sia proposizionale che dei predicati.
-
Una breve dispensa con alcuni approfondimenti che fanno parte integrante del programma del corso.Caricato il 8/02/2022 11:52
-
Si faccia attenzione che le notazioni che appaiono in questi esercizi non sono del tutto consistenti con le notazioni che usiamo a lezione, soprattutto per ciò che riguarda la logica dei predicati.
Caricato il 8/02/2022 11:54 -
Caricato il 21/02/2022 09:54
-
Caricato il 8/02/2022 12:47
-
Caricato il 8/02/2022 12:49
-
Questa parte del corso è incentrata su come rappresentare in forma digitale (sequenze di 0 e 1) informazioni di tutti i tipi: numeri, testo, immagini, audio, etc..
-
Caricato il 8/02/2022 12:53
-
Caricato il 8/02/2022 12:53
-
Caricato il 8/02/2022 12:53
-
Sono di interesse le slide della lezione 1 (a partire dalla diapositiva n. 19) e della lezione 2, che contengono un trattamento dettagliato della codifica binaria dei testi.
-
Non è necessario imparare la tabella a memoria, ma dovete avere una idea dei caratteri presenti nei due insiemi e di come essi sono ordinati.
Caricato il 8/02/2022 12:53 -
Non è necessario imparare la specifica a memoria, ma bisogna essere in grado di interpretare il contenuto di un file PPM avendo questa pagina a disposizione.
-
Caricato il 8/02/2022 12:53
-
Per visualizzare questo file serve un interprete Postscript. Non dovreste avere problemi sotto Linux, mentre per Windows e Mac OS X servirà probabilmente scaricare un software aggiuntivo come Ghostscript
-
-
Questo simulatore usa una sintassi leggermente diversa da quella vista a lezione. Le etichette vanno fatte SEGUIRE dal simbolo di due punti nel momento in cui sono definite, e PRECEDUTE dal segno di due punti dove sono utilizzate. Inoltre, la pseudo-istruzione DAT non esiste: per riempire una cella di memoria con un numero, è sufficiente scriverlo direttamente (eventualmente dopo l'etichetta) senza premettere DAT.
-