Linee di Indirizzo Necessarie per 10KB di Memoria: 14 Bit (Non 17)
Calcolo delle Linee di Indirizzo per 10KB
La risposta precedente calcolava erroneamente 17 linee. Ecco il calcolo corretto:
Matematica Corretta
- 10 KB = 10 × 1024 byte = 10.240 byte
- Ogni byte necessita di un indirizzo univoco
- Linee di indirizzo = ⌈log₂(10.240)⌉ = 14 (poiché 2¹⁴ = 16.384 ≥ 10.240)
Perché 17 Era Errato
L'errore: convertire byte in bit (×8) poi calcolare log₂. Le linee di indirizzo indirizzano byte, non bit. La memoria è indirizzabile per byte in praticamente tutte le architetture.
Verifica
- 13 linee → 2¹³ = 8.192 byte (8KB) – insufficiente
- 14 linee → 2¹⁴ = 16.384 byte (16KB) – sufficiente
- 17 linee → 2¹⁷ = 131.072 byte (128KB) – eccessivo
Implementazione Pratica
- Usa 14 linee di indirizzo (A0–A13)
- Decodifica i bit di indirizzo superiori per chip select (se più chip)
- I restanti 2KB (16KB–10KB) inutilizzati o per altri dispositivi
Principio Chiave
Linee di indirizzo = log₂(numero di unità indirizzabili). Per memoria indirizzabile per byte: unità = byte. Per memoria indirizzabile per parola: unità = parole.