« Fonctionnement d'un ordinateur/Le modèle mémoire : alignement et boutisme » : différence entre les versions

Contenu supprimé Contenu ajouté
Ligne 23 :
====Adresses valides et invalides====
 
Avec cette technique, il y a une différence entre l'adresses d'un mot et l'adresses d'un byte. Les ''bytes ont une adresse qui est gérée par le processeur, alors que la mémoire ne gère que les adresses des mots. Par convention, l'adresse d'un mot est l'adresse de son byte de poids faible. Les autres bytes du mot ne sont pas adressables par la mémoire. Par exemple, si on prend un mot de 8 octets, on est certain qu'une adresse sur 8 disparaitra. L'adresse du mot est utilisée pour communiquer avec la mémoire, mais cela ne signifie pas que l'adresse des bytes est inutile au-delà du calcul de l'adresse du mot. En effet, l'accès à un byte précis est encore possible : le processeur lit un mot entier, sélectionne le byte adéquat et oublie les autres. Et pour cela, il doit déterminer la position du byte dans le mot. C'est là que l'adresse du byte est utile. Elle donne la position du byte dans le mot, elle indique si le byte à lire/écrire est le premier du mot, le second, le troisième, etc.
 
Prenons un exemple, afin de détailler quelque peu le propos. Prenons un processeur ayant des mots de 4 octets et répertorions les adresses utilisables. Le premier mot contient les ''bytes'' d'adresse 0, 1, 2 et 3. L'adresse zéro est l'adresse de l'octet de poids faible et sert donc d'adresse au premier mot, les autres sont inutilisables sur le bus mémoire. Le second mot contient les adresses 4, 5, 6 et 7, l'adresse 4 est l'adresse du mot, les autres sont inutilisables. Et ainsi de suite. Si on fait une liste exhaustive des adresses valides et invalides, on remarque que seules les adresses multiples de 4 sont utilisables. Et ceux qui sont encore plus observateurs remarqueront que 4 est la taille d'un mot.