|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Jun 2007
Messaggi: 62
|
[Architettura PC] Che relazione c'è fra...
Memoria centrale di un elaboratore, dimensione Program Counter e dimensione Registro Indirizzi?
Esempio: Un elaboratore ha una memoria centrale di 4 GB. Se il registro contatore di programma (program counter) ha una dimensione di 32 bit, quale deve essere la dimensione minima in byte del registro indirizzi? |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Mar 2004
Messaggi: 1451
|
Non è detto che lo debba essere, visto che esiste la memoria virtuale, ma non considerandola dovrebbe essere log in base 2 di 4GB
__________________
Ciao ~ZeRO sTrEsS~ |
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: Jun 2007
Messaggi: 62
|
La risposta è: dim(RI) = dim (PC) =32 bit = 4B Ma il problema è: Come arrivo a questa conclusione?
|
![]() |
![]() |
![]() |
#4 | |
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
sul "registro indirizzi" invece potremmo dire che in certi casi capita avere la stessa dimensione del program counter; affinché ciò si verifichi l'architettura deve essere stata progettata in modo tale che la dimensione della memoria virtuale coincida con quella massima della memoria fisica che può essere indirizzata. non è necessario che questa condizione si verifichi, ma potrebbe; ancora una volta, guarda che strano che l'esercizio ci dia un elaboratore con 4 GB precisi precisi di RAM. |
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Comunque per il registro indirizzi è facile...il primo passo della fase di fetch è caricare il program counter nel MAR (memory address register) che che credo corrisponda al tuo RI. Quindi la dimensione di RI deve essere >= di PC.
Per la memoria il discorso è più complesso. Se il sistema ha solamente la possibilità di utililizzare un tipo di indirizzamento flat e quella è la memoria massima indirizzabile allora è chiaro che il PC deve riuscire ad indirizzare tutte le locazioni di memoria (anche se questo può non essere così automatico se si utilizzano varie ottimizzazioni per set di istruzioni a lunghezza fissa). |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Mar 2004
Messaggi: 1451
|
In teoria MAR dovrebbe essere diverso da AR
__________________
Ciao ~ZeRO sTrEsS~ |
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
MAR = Memory Address Register...RI = Registro Indirizzi
Altrimenti non so cosa intendano... Il MAR, come l'ho visto io, è quel registro dove si mette l'indirizzo a cui si vuole accedere prima di inviare l'abilitazione ai chip di memoria... In pratica è un latch che esce diretto sul bus indirizzi. Ultima modifica di cionci : 30-08-2007 alle 19:19. |
![]() |
![]() |
![]() |
#8 | |
Senior Member
Iscritto dal: Mar 2004
Messaggi: 1451
|
Quote:
Però da reminiscenze ricordo che esisteva un altro registro interno AR intermedio, e MAR fosse accessibile solo da AR. Sul punto di vista pratico è la stessa cosa ![]()
__________________
Ciao ~ZeRO sTrEsS~ |
|
![]() |
![]() |
![]() |
#9 | |
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
edit - anzi: il MAR contiene sicuramente l'indirizzo fisico perché me lo ricordo anche io ![]() quindi evidentemente questo AR contiene un indirizzo virtuale. |
|
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Dipende dall'architettura...non tutte, soprattutto quelle didattiche, hanno memoria virtuale, contando che gli dicono che ha 4 GB di RAM, imho ha un indirizzamento flat...
L'altro registro che mi ricordo è il MDR, ma è quello che riceve i dati letti e contiene i dati da scrivere. |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:35.