Cycle d’exécution d'une instruction


Tout programme procède en trois cycles pour exécuter une instruction:
                                         
a - La recherche :
Le contenu du compteur programme est déposé sur le bus d’adresses et envoyé vers la mémoire. Cette adresse spécifie un emplacement de la mémoire. L’adresse est décodée, puis son contenu (l’instruction recherchée qui est sur 8 bits) est déposé sur le bus de données.
b - Le décodage :
Le bus de données dépose « l’instruction » (Les 8 bits représentant l’instruction) dans le registre interne appelé registre d’instructions (IR = Instruction Register).
Ce dernier conserve l’instruction afin que l’unité de commande la décode. Et génère ensuite les signaux internes et externes correspondant à cette instruction.
c – Exécution :
Après le décodage, vient la phase d’exécution dont la longueur dépend de la nature de l’instruction considérée. en effet, certaines instructions s’exécutent entièrement à l’intérieur du microprocesseur. D’autres recherchent ou envoient des données en mémoire.



Modes d’adressage en 6800



Le microprocesseur Motorola 6800 possède six modes d’adressage :
- Immédiat (Présence de #)
LDAA # 25
LDX # 0025
- Direct (L’opérande est une adresse de 8 bits)
LDA A 25
- Etendu (L’opérande est une adresse de 16 bits)
LDAA 1125
LDX 1125
- L’indexé (Présence d’un pas + registre X)
LDAB 04, X
ici B est chargé par le contenu de (04 + x)
- Relatif (Pour les instructions de branchements)
- Implicite (Pour les opérations concernant les registre du CPU, exemple : INC A, CLR B … etc).


Les instructions en Motorola 6800

Le microprocesseur Motorola 6800 possède 78 instructions, Exemple :
- Le contenu des accumulateurs A et B, registre d’index X, pointeur de pile SP peuvent être transférés en mémoire.
LDA = Charger l’accumulateur A ou B par une valeur.
STA = Ranger le contenu de l’accumulateur A ou B dans la mémoire.
LDX = Charger le registre d’index X par une adresse.
STX = Ranger le contenu du registre d’index X dans la mémoire.
LDS = Charger le registre SP (pointeur de pile) par une adresse.
STS = Ranger le contenu du registre SP dans la mémoire.


Code machine en Motorola 6800




Lecture du code machine dans l'émulateur Motorola 6800 ...


Partager