Il Memory Address Register (MAR) è il registro dell'unità centrale di elaborazione (CPU) di un computer che contiene l'indirizzo di una posizione di memoria per la lettura o la scrittura. È strettamente associato al Memory Data Register (MDR) che memorizza i dati da recuperare o memorizzare in memoria.

Nel ciclo fetch-execute, le istruzioni vengono eseguite dalla CPU dalla RAM. Il MAR fornisce alla CPU l'indirizzo dell'istruzione in memoria. La CPU segnala che ha bisogno di un'istruzione da un indirizzo specifico e il MAR fornisce tale indirizzo. L'indirizzo viene quindi inviato a un buffer di memoria, dove passa attraverso l'unità di gestione della memoria (MMU), se applicabile. Da qui viene inviato al controller RAM, che fornisce i dati alla CPU.

Quando si legge o si scrive un valore in memoria, il MAR fornisce nuovamente l'indirizzo di memoria. L'MDR contiene quindi i dati da scrivere in memoria. L'MDR può contenere sia un'istruzione che un dato nello stesso ciclo di fetch.

Le MAR sono incluse nella maggior parte dei microprocessori moderni per sfruttare l'architettura di Von Neumann. Le MAR sono solitamente composte da un piccolo numero di elementi di memoria (bit) e da istruzioni di accesso (addizione, sottrazione, selezione e memorizzazione).

Le MAR sono componenti vitali di qualsiasi sistema informatico moderno. La loro progettazione è un fattore importante per le prestazioni del sistema informatico, in quanto sono responsabili del recupero dei dati dalla memoria in modo tempestivo. Per ridurre la latenza tra i cicli di fetch e accelerare l'esecuzione delle istruzioni, le moderne architetture dei processori includono più MAR, oltre ad altri registri specializzati come il Memory Data Register (MDR).

Scegliere e acquistare il Proxy

Proxy per data center

Proxy a rotazione

Proxy UDP

Scelto da oltre 10.000 clienti in tutto il mondo

Cliente proxy
Cliente proxy
Cliente proxy flowch.ai
Cliente proxy
Cliente proxy
Cliente proxy