Exécution d'une instruction
Il existe différents type d'instructions :
- opérations arithmétiques ou logiques : elles sont en lien avec l'UAL : Addition, complémentation...
- opérations d'échange ou de transfert : sauver l'accumulateur, charger l'accumulateur avec une donnée en mémoire...
- opérations liées au fonctionnement du processeur : arrêt logiciel, masquage d'interruption...
Dans certains cas les opérations ne nécessitent aucun opérande, et l'instruction tient sur un octet : exemple : Incrémenter A (INCA). On parle d'adressage implicite.
D'autres instructions nécessitent un opérande de 1 octet spécifié immédiatement à la suite de l'instruction: Exemple : Ajouter $20 à la valeur de l'accumulateur (LDAA #$20). Il s'agit d'un adressage immédiat.
Enfin des instructions peuvent spécifier l'emplacement de la donnée par une adresse sur un ou deux octets : exemple : mettre le contenu de la case mémoire d'adresse $1000 dans l'accumulateur (LDAA $1000). Il s'agit d'un adressage direct ou étendu.
Quelque soit le type d'instruction, le code binaire qui la caractérise décrit la manière dont elle doit être exécutée.
C'est l'Unité de Contrôle composée du registre d'instruction, du décodeur et du séquenceur qui assure l'éxécution de l'instruction.
Exemple d'une instruction de chargement de l'accumulateur par la valeur $10
adressage direct
| |
adressage étendu
| |
adressage immédiat
| |
adressage implicite
|