« Fonctionnement d'un ordinateur/Les jeux d'instructions » : différence entre les versions

Contenu supprimé Contenu ajouté
Ligne 44 :
Historiquement, les premières architectures à accumulateur ne contenaient aucun autre registre que l'accumulateur. Toutes les opérandes hors-accumulateur étaient lues en mémoire. Sur ces processeurs, les modes d'adressages supportés étaient les modes d'adressages implicite, absolus, et immédiat. Ces architectures sont parfois appelées '''architectures 1-adresse''', pour une raison simple : la majorité des instructions manipulent deux opérandes, ce qui fait qu'elles devaient lire une opérande depuis la RAM. Pour ces opérations, le résultat ainsi qu'une des opérandes sont stockés dans l'accumulateur, et adressés de façon implicite, seule la seconde opérande étant adressée directement.
 
Avec ces seuls modes d'adressages, l'utilisation de tableaux ou de structures devenaitétait un véritable calvaire. Pour améliorer la situation, cesles processeurs à accumulateurs ont alors incorporés des '''registres d'Index''', pour faciliter les calculs d'adresse mémoire. Ils étaient capables de stocker des indices de tableaux, ou des constantes permettant de localiser une donnée dans une structure. Ces registres facilitaient donc les calculs d'adresses mémoire. Au départ, ces processeurs n'utilisaient qu'un seul registre d'Index, accessible et modifiable via des instructions spécialisées., Ce registre d'Indexqui se comportait comme un second accumulateur, spécialisé dans les calculs d'adresses mémoire, adressé implicitement. Les modes d'adressages autorisés restaient les mêmes qu'avec une architecture à accumulateur normale. La seule différence, c'est que le processeur contenait de nouvelles instruction capables de lire ou d'écrire une donnée dans/depuis l'accumulateur, qui utilisaient ce registre d'Index de façon implicite. Mais avec le temps, nos processeurs finirent par incorporer plusieurs de ces registres. Nos instructions de lecture ou d'écriture devaient alors préciser quel registre d'Index utiliser. Le mode d'adressage Indexed Absolute vit le jour. Les autres modes d'adressages, comme le mode d'adressage Base + Index ou indirects à registres étaient plutôt rares à l'époque et étaient difficiles à mettre en œuvre sur ce genre de machines.
 
Ensuite, ces architectures s’améliorèrent un petit peu : on leur ajouta des registres capables de stocker des données. L’accumulateur n'était plus seul au monde. Mais attention : ces registres ne peuvent servir que d’opérande dans une instruction, et le résultat d'une instruction ira obligatoirement dans l'accumulateur. Ces architectures supportaient donc le mode d'adressage inhérent.