Architettura di Von Neumann
Componenti principali
Memoria principale | CPU | Interfaccia (Input) | Bus di comunicazione | Interfaccia (Output) | Interfaccia (Memoria Principale)
Organizzazione gerarchica della memoria
La memoria negli elaboratori non è tutta uguale; sono stati cercati compromessi tra costo, prestazioni e dimensioni della memoria. Tuttavia, la memoria è più lenta del processore e tende a limitare le prestazioni; per questo è stata inserita poca memoria veloce vicino al processore e tanta memoria lenta complessiva.
Principio di località
- Temporale: Tendenza a riferirsi allo stesso elemento entro breve tempo (cicli di programma, variabili istanziate nei cicli).
- Spaziale: Tendenza a riferire la successiva lettura/scrittura in memoria ad elementi che hanno indirizzo vicino all'elemento corrente (programmi sequenziali, strutture dati allocate sequenzialmente).
- Obiettivo ideale: Fornire una quantità di memoria pari a quella disponibile nella tecnologia più economica garantendo velocità di accesso pari a quella della memoria costosa.
Architettura funzionale
Il registro è una piccola parte di memoria utilizzata per velocizzare l'esecuzione dei programmi fornendo un accesso rapido ai valori usati più frequentemente. La maggior parte delle architetture moderne è RISC. Solitamente i registri sono misurati in base ai bit, da 8 a 32.
Nell'architettura x86 è disponibile un set di otto registri utilizzabili dalle istruzioni del linguaggio macchina. I registri generali in questa architettura sono: EAX (accumulatore), EBX (base), ECX (contatore), EDX (dati). Attualmente questi registri sono a 32 bit (E..); inizialmente erano a 16 e prima ancora a 8 bit (AX, BX, CX, DX; ciascuno diviso in AH, AL, ecc., da 8 bit, high and low).
Oltre a questi vi sono i registri puntatori ed indici: ESP (puntatore allo stack), EBP (puntatore alla base dello stack), EDI (indice di destinazione), ESI (indice sorgente); sono tutti registri a 16 bit. I registri segmenti vengono combinati con altri registri per formare indirizzi di memoria. Vi sono alcuni registri speciali. Il FLAG register è un registro nel quale ogni bit è considerato separatamente. Ogni bit rappresenta un flag, ovvero una condizione specificata dalle istruzioni del programma. Alcuni suoi principali bit sono:
- 0 → CF: Viene posto ad uno quando c'è stato un riporto o un prestito dal bit di ordine alto del risultato a 8 o 16 bit.
- 6 → ZF: Viene messo a zero se il risultato di un'operazione è 0.
Spazio di memoria
La gestione dello spazio di memoria è fondamentale per l'efficienza complessiva del sistema.
-
Appunti di Fondamenti di Informatica teoria - von Neumann
-
Fondamenti di Informatica - Teoria
-
Appunti Fondamenti di informatica
-
Appunti Fondamenti di informatica