Question

Je l'ai lu sur les modèles de mémoire dans un livre d'assemblage que je pris et j'ai une ou deux questions. Disons que le bus d'adresse a 32 lignes, le bus de données dispose de 32 lignes et la CPU est de 32 bits (pour simplifier). Maintenant, si la CPU fait une demande de lecture et envoie l'adresse de 32 bits, mais doit seulement 8 bits, les 32 bits reviennent de toute façon? En outre, sont encore traitées les adresses en mémoire par octet correct? Donc, aller chercher un octet ramènerait 0000 0001 0000 0004 pour répondre?

Était-ce utile?

La solution

En général, oui. Il n'y a rien à gagner en lisant les parties d'un mot à partir d'un bus, donc est lu un mot entier. Instructions précisent quelles parties des mots dont ils ont besoin pour charger réellement ou stocker dans des registres.

Cela dit, il est rare de lire directement depuis la mémoire ces jours-ci. Processeurs ont des caches avec lesquels vous interagissez 99% du temps, et lorsque les données ne sont pas dans le cache, une ligne entière est amené (plusieurs mots) et vous toujours lire à partir du cache.

Notez également que de nombreux processeurs modernes ont réellement bus 64 bits.

Autres conseils

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top