1.1 Il linguaggio Assembly
1.2 Ambiente operativo
1.3 Strumenti di sviluppo per l'Assembly
1.4 Assembler disponibili
2.1 Il concetto di algoritmo
2.2 L'architettura di Von Neumann
2.3 Codifica dell'informazione
3.1 Un computer immaginario che lavora in base 10
3.2 Numeri interi senza segno
3.2.1 Addizione tra numeri interi senza segno
3.2.2 Sottrazione tra numeri interi senza segno
3.2.3 Moltiplicazione tra numeri interi senza segno
3.2.4 Caso particolare per la moltiplicazione tra numeri interi senza segno
3.2.5 Divisione tra numeri interi senza segno
3.2.6 Caso particolare per la divisione tra numeri interi senza segno
3.3 Numeri interi con segno (positivi e negativi)
3.3.1 Complemento a 10
3.3.2 Addizione e sottrazione tra numeri interi con segno
3.3.3 Moltiplicazione tra numeri interi con segno
3.3.4 Caso particolare per la moltiplicazione tra numeri interi con segno
3.3.5 Divisione tra numeri interi con segno
3.3.6 Caso particolare per la divisione tra numeri interi con segno
3.4 Estensione del segno
3.5 Equivalenza tra le quattro operazioni
3.6 Numeri reali
4.1 Sistema di numerazione posizionale in base b = 6
4.2 Sistema di numerazione posizionale in base b = 2
4.3 Numeri interi senza segno
4.3.1 Addizione tra numeri interi senza segno
4.3.2 Sottrazione tra numeri interi senza segno
4.3.3 Moltiplicazione tra numeri interi senza segno
4.3.4 Divisione tra numeri interi senza segno
4.4 Numeri interi con segno
4.4.1 Complemento a 1 e complemento a 2
4.4.2 Addizione e sottrazione tra numeri interi con segno
4.4.3 Moltiplicazione tra numeri interi con segno
4.4.4 Divisione tra numeri interi con segno
4.5 Estensione del segno
4.6 Proprietà generali delle codifiche numeriche a n cifre in base b
4.7 Rappresentazione dei numeri in altre basi
4.7.1 Sistema di numerazione posizionale in base b = 8
4.7.2 Sistema di numerazione posizionale in base b = 16
4.7.3 Conversioni numeriche che coinvolgono la base 10
5.1 Segnali analogici e segnali logici
5.2 I dispositivi logici
5.3 L'algebra di Boole
5.4 Concetti fondamentali dell'algebra di Boole
5.5 Interpretazione dei concetti fondamentali
5.5.1 OR logico
5.5.2 AND logico
5.5.3 NOT logico
5.5.4 Uguaglianza logica ( = )
5.6 Postulati fondamentali dell'algebra di Boole
5.7 Dimostrazione dei postulati fondamentali
5.8 Teoremi dell'algebra di Boole
5.9 Altre porte logiche importanti
5.9.1 Porta OR Esclusivo
5.9.2 Porta NOR Esclusivo
5.9.3 Porta NOR
5.9.4 Porta NAND
5.9.5 Porte logiche derivate dalla porta NAND
5.10 Le famiglie logiche
5.10.1 La famiglia DL (Diode Logic)
5.10.2 La famiglia TTL (Transistor Transistor Logic)
5.10.3 La famiglia CMOS
6.1 Circuiti Multiplexer e Demultiplexer
6.2 Comparazione tra numeri binari
6.3 Addizione tra numeri binari
6.4 Sottrazione tra numeri binari
6.5 Circuiti complementatori
6.6 Moltiplicazione tra numeri binari
6.7 Divisione tra numeri binari
6.8 Scorrimento dei bit di un numero binario
6.8.1 Moltiplicazione di un numero intero binario per una potenza intera del 2
6.8.2 Divisione di un numero intero binario per una potenza intera del 2
6.8.3 Verifica del risultato attraverso i flags
6.8.4 Esempio di shifter a 4 bit
6.9 Rotazione dei bit di un numero binario
8.1 Configurazione delle memorie di lavoro
8.1.1 Accesso in memoria con Data Bus a 8 bit
8.1.2 Accesso in memoria con Data Bus a 16 bit
8.1.3 Accesso in memoria con Data Bus a 32 bit
8.2 Le reti sequenziali
8.2.1 Il flip-flop set/reset
8.2.2 Il flip-flop data
8.2.3 Struttura circuitale di un FF
8.3 Registri di memoria
8.3.1 Registri a scorrimento
8.3.2 Registri paralleli
8.4 Memorie RAM
8.4.1 Memorie RAM statiche (SRAM)
8.4.2 Memorie RAM dinamiche (DRAM)
8.4.3 le nuove memorie Double Data Rate (DDRX)
8.5 Memorie ROM
9.1 La modalità di indirizzamento reale 8086
9.2 La modalità di indirizzamento protetto
9.3 Sistemi operativi per la modalità reale: il DOS
9.3.1 Vettori di interruzione - da 00000000h a 000003FFh
9.3.2 Area dati ROM-BIOS - da 00000400h a 000004FFh
9.3.3 Area comunicazioni del DOS - da 00000500h a 000006FFh
9.3.4 Kernel del DOS, Device Drivers, etc - da 00000700h a ????????h
9.3.5 Disponibile per i programmi DOS - da ????????h a 000A0000h
9.3.6 Buffer video - modo grafico - da 000A0000h a 000AFFFFh
9.3.7 Buffer video - modo testo in b/n - da 000B0000h a 000B7FFFh
9.3.8 Buffer video - modo testo a colori - da 000B8000h a 000BFFFFh
9.3.9 Video ROM BIOS - da 000C0000h a 000CFFFFh
9.3.10 Disponibile per altri BIOS e buffers - da 000D0000h a 000EFFFFh
9.3.11 PC ROM BIOS - da 000F0000h a 000FFFFFh
9.4 Organizzazione della memoria sotto DOS
9.5 Indirizzamento di un programma DOS
9.6 Supporto del DOS sui sistemi operativi per la modalità protetta
10.1 Struttura generale di un programma
10.1.1 Il Data Segment di un programma
10.1.2 Lo Stack Segment di un programma
10.1.3 Segmento misto Data + Stack
10.1.4 Il Code Segment di un programma
10.1.5 Struttura a segmenti di un programma
10.2 Architettura generale della CPU
10.2.1 Execution Unit
10.2.2 Bus Interface Unit
10.3 Registri interni delle CPU a 16 bit
10.3.1 Associazioni predefinite tra registri puntatori e registri di segmento
10.3.2 Indirezione o deriferimento di un puntatore NEAR
10.3.3 Indirezione o deriferimento di un puntatore FAR
10.3.4 Flags Register
10.4 Registri interni delle CPU a 32 bit
10.5 Logica di controllo e temporizzazioni della CPU
10.6 Prefetch Queue, Cache Memory e Pipeline
10.6.1 La Prefetch Queue
10.6.2 La Cache Memory
10.6.3 La Pipeline