Lezione | Data | Slide / Riferimenti | Argomenti |
1 | 06/03/2023 | Introduzione al Corso ed agli strumenti telematici per la didattica. Brevi cenni storici sulla evoluzione dei calcolatori elettronici. Informazione e sua rappresentazione. Codici a lunghezza fissa ed a lunghezza variabile. Codici binari. Esempi di codici. | |
2 | 07/03/2023 |
Rappresentazione posizionale dei numeri. Sistemi binario, ottale ed esadecimale. Rappresentazione di numeri naturali. Rappresentazione di numeri interi relativi: rappresentazione in segno e modulo ed in complementi. Rappresentazione in complementi alla base. Funzione resto-modulo-M. Algoritmi di complementazione. Estensione della rappresentazione. Aritmetica in complementi. Overflow. Rappresentazione in complementi diminuiti o complemento ad 1. |
|
3 | 09/03/2023 |
Rappresentazione per eccessi (vedi slide lezione 2). Rappresentazione di numeri frazionari in virgola fissa. Rappresentazione di nuemri reali in virgola mobile. Discretizzazione di R ed errore assoluto e relativo. Errori di underflow ed overflow. Rappresentazione in virgola mobile in forma normalizzata. Standard IEEE 754: rappresentazione in singola e doppia precisione; rappresentazione in forma de-normalizzata; rappresentazione di valori speciali. Esempi di rappresentazione di numeri reali secondo lo standard IEEE 754. |
|
4 | 13/03/2023 |
Algebra di Boole. Proprietà fondamentali. Definizione di Algebra di Boole. Teorema di De Morgan ed altre proprietà dell'algebra di Boole. Modelli di algebre di Boole: algebra delle proposizioni, algebra degli insiemi ed algebra dei circuiti. Porte logiche elementari e loro composizione. |
|
5 | 14/03/2023 |
Funzioni booleane e tabella di verità. Funzioni booleane di 2 variabili. Mintermini e maxtermini. Forma normale di tipo P e di tipo S di una funzione booleana. |
|
6 | 16/03/2023 |
Relazione d'ordine parziale in un'algebra di Boole. Implicazione come relazione d'ordine nell'algebra delle proposizioni. Clausole e fattori elementari. Implicanti di una funzione. Implicanti primi. Generazione di consensi tra mintermini. Mappe di Karnaugh. Rappresentazione di clausole sulle Mappe di Karnaugh. |
|
7 | 20/03/2023 |
Introduzione al problema della minimizzazione di funzioni booleane. Individuazione degli implicanti primi sulle mappe di Karnaugh. Ricerca dei primi implicanti: espansione sulla mappa di Karnaugh per funzioni fino a 4 variabili. Primi implicanti essenziali. Funzioni cicliche. Copertura mediante mappe di Karnaugh. Minimizzazione di funzioni booleane: matrice di copertura. |
|
21/03/2023 | Lezione annullata per sovrapposizione con seduta di Laurea in Ingegneria Informatica. | ||
8 | 23/03/2023 | ||
9 | 27/03/2023 | ||
28/03/2023 | Lezione annullata per sovrapposizione con seduta di Laurea Magistrale in Ingegneria Informatica. | ||
10 | 30/03/2023 | ||
11 | 03/04/2023 | ||
12 | 04/04/2023 | ||
13 | 13/04/2023 | ||
14 | 17/04/2023 | ||
15 | 18/04/2023 | ||
16 | 20/04/2023 | ||
27/04/2023 | Lezione annullata su disposizione della Scuola Politecnica. | ||
17 | 02/05/2023 |
Lezione di recupero. |
|
18 | 02/05/2023 | ||
19 | 04/05/2023 | ||
20 | 05/05/2023 |
Lezione di recupero. |
|
21 | 08/05/2023 | ||
22 | 08/05/2023 |
Lezione di recupero. |
|
09/05/2023 | Lezione annullata per altro impegno didattico concomitante. | ||
23 | 11/05/2023 |
Introduzione all'architettura del calcolatore. Il processore. Ciclo del processore. Interfacciamento processore-memoria. Rappresentazione in memoria di dati di tipo word: disposizione big-endian e little-endian. Word allineate e non allineate. |
|
24 | 12/05/2023 |
Lezione di recupero. |
|
15/05/2023 | Prima pova intracorso. | ||
16/05/2023 | Lezione annullata per altro impegno didattico concomitante. | ||
25 | 18/05/2023 |
Processore: modello ad accumulatore e modello a registri generali. Primi esempi di codici in linguaggio macchina per processori ad accumulatore ed a registri generali. Introduzione al linguaggio macchina. Classi di istruzioni l/m. Codifica delle istruzioni in linguaggio macchina. Il modello di programmazione del processore Motorola MC68000. |
|
26 | 19/05/2023 |
Lezione di recupero. Introduzione al linguaggio assembly. Formato delle istruzioni in assembly. Funzionamento dell'assemblatore: Program Location Counter (PLC). Linguaggio assembly MC68000. Direttive di assemblaggio: ORG, END, EQU, DC, DS. Primo esempio di programma assembly MC68000. |
|
27 | 22/05/2023 |
Prima panoramica su alcune istruzioni l/m del processore MC68000. L'istruzione MOVE. AsimTool. Ambiente di simulazione Asim. Modi di indirizzamento diretto a registro, immediato ed assoluto. |
|
28 | 23/05/2023 |
Modi di indirizzamento del processore MC68000: indiretto, indiretto con pre-decremento, indiretto con post-incremento. Istruzioni di salto assoluto (jump) e salto relativo (branch): differenze nella codifica in linguaggio macchina. Istruzioni di salto condizionato (Bcc) del processore MC68000. Esercizi di programmazione assembler MC68000: calcolo del prodotto scalare di due vettori di interi. Esecuzione dei programmi nel simulatore Asim. |
|
29 | 25/05/2023 |
Codifica in assembler di tipici costrutti di controllo del flusso di programma. Istruzioni aritmetiche del processore MC68000: ADD, SUB, NEG. Istruzioni ADDI, ADDQ. Flag del processore e loro settaggio da parte delle istruzioni aritmetiche e di confronto. Istruzioni di confronto: CMP e TST. Istruzioni su operandi di tipo indirizzo: MOVEA e ADDA. Istruzione DBcc. Esercizi di programmazione assembler MC68000: ricerca di un token in una stringa NUL-terminated. |
|
30 | 29/05/2023 | ||
31 | 30/05/2023 | ||
32 | 01/06/2023 |
Architettura interna della CPU. Struttura a bus interno unico ed a tre bus interni. Trasferimenti tra registri del processore. Register file. Cenni al ruolo della unità di controllo della CPU. Analisi della fase fetch del processore. Gerarchia di memorie in un calcolatore. Memorie indirizzabili vs. memorie content-addressable. Memorie RAM. Schemi di selezione. Selezione lineare e semiselezione. SRAM vs. DRAM. Collegamenti di chip di memoria per aumentare la capacità. Interfacciamento CPU-memoria. Schemi asincroni e sincroni. SDRAM. |
|
33 | 05/06/2023 |
Esercizi di programmazione assembler MC68000: confronto tra due stringhe NUL-terminated con subroutine STRCMP. Aritmetica in precisione multipla: il flag X e l'istruzione ADDX. Esecuzione di un programma con subroutine nel simulatore ASIM. Il sistema delle interruzioni. Interrupt Service Routine (ISR). Context switch e latenza delle interruzioni. Priorità delle interruzioni e nesting delle ISR. Identificazione della richiesta di interruzione: daisy chaining, polling o handshaking. Interruzioni vettorizzate ed autovettorizzate. |
|
34 | 06/06/2023 |
Il sistema delle interruzioni del processore MC68000. Istruzione RTE. Interruzioni vettorizzate ed autovettorizzate in sistemi basati su MC68000. Livelli di privilegio del processore MC68000. Istruzioni privilegiate. Interrupt, eccezioni e trap. Istruzione TRAP. Architettura interna della CPU. Struttura a bus interno unico ed a tre bus interni. Trasferimenti tra registri del processore. Register file. Cenni al ruolo della unità di controllo della CPU. Analisi della fase fetch del processore. Breve presentazione dei processori ARM (cenni). |
|
08/06/2023 | Seconda prova intracorso. | ||
35 | 09/06/2023 |
Il sistema di I/O. I/O memory mapped vs. I/O isolato. Sincronizzazione del colloquio CPU-periferica: I/O programmato vs I/O con interruzioni. Esempio di driver con I/O programmato e con interruzioni. Interfacce con capacità DMA. |
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
Ultimo aggiornamento: 25 maggio 2023