| ★ CODING ★ HEBDOGICIEL ★ FORMATION A L'ASSEMBLEUR PRATIQUE LANGAGE MACHINE SUR AMSTRAD ★ |
| La page pédagogique d'hebdogiciel 119: Registres et Adressage | Coding Hebdogiciel |
Chose promise, chose due : nous allons entrer dans la cathédrale ! Voici le Z80 dans toute sa splendeur
Attention, la visite va commencer ! ACCUMULATEUR (registre A): DOUBLES REGISTRES ( B , C , D , E , H , L ) :
REGISTRE D'ÉTAT (F) : C Carry : C'est l'indicateur de retenue, très utilisé. Il sert principalement à savoir s'il y a une retenue après une instruction arithmétique. Dans les instructions de décalage, il permet de tester un bit et iI est mis a 0 par les instructions booléennes. N Soustraction : un indicateur que vous pouvez oublier, car il est testé par le microprocesseur uniquement. Il est initialisé à l par toutes tes instructions de soustraction et A 0 par les instructions d'addition. P/O Panté/Overflow : Il a plusieurs significations, selon le type d'opération exécuté . Pour les opérations arithmétiques, c'est un indicateur de dépassement de capacité (over-fiow). Pour tes Instructions d'entrées, logiques et de rotation, c'est un bit de partie : 1 pour parité paire et 0 pour impaire. A/C Demi-retenue : Cet indicateur contient toute retenue du bit 3 vers le bit 4 résultant d'une instruction arithmétique. Z Zéro : L'indicateur le plus utilisé avec Carry. et le plus facile à comprendre. Il est mis à 1 chaque fois qu'une opération arithmétique ou logique produit un résultat nul et à 0 dans tous les autres cas. S Signe : cet indicateur acquiert la valeur du bit le plus significatif (souvenez-vous, le bit 7) du résultat de toute Instruction arithmétique ou logique. BANQUE DE REGISTRES AUXILIAIRES : POINTEUR DE PILE : COMPTEUR ORDINAL : LES REGISTRES D'INDEX (IX , IY) : INTERRUPTION ET RAFRAÎCHISSEMENT ( I , R ) : RÉCAPITULONS La visite est maintenant terminée. mais nous reviendrons souvent dans ce temple de votre ordinateur préféré t Vous savez maintenant comment est fait te Z80, ce qu'est un octet, un bit , une case mémoire. Mais que se passe-t-il quand le microprocesseur exécute une instruction ? Voilà ce que vous attendez de savoir avec impatience ! Ce qui se passe ? Vous le saurez... Tout de suite !! EXÉCUTION Prenons trois instructions sans nous inquiéter de leur sens, le principal étant de comprendre ce qui se passe dans le microprocesseur quand vous les faites exécuter. Un programme en langage machine est implanté dans la mémoire et commence à une adresse précise. Pour nos exemples, nous prendrons toujours l'adresse S 8000. Une instruction assembleur, une fois implantée dans la mémoire, peut prendre entre 1 et 4 octets; choisissons trois instructions à 1 octet :
RÉCRÉATION Voici aujourd'hui de quoi concurrencer la rubrique deux lignes, ça s'Intitule marteau piqueur. Pour arrêter le massacre, remplacez le 1 par 0. RECTIFICATIF Le mois dernier, deux erreurs se sont glissées (comme elles savent si bien le faire) dans le listing 3 , les INKEYS sont a remplacer par INKEY (ça vous l'aviez trouvé) et la ligne 90 est à remplacer par OUT &BD00,A. Le mois prochain nous affronterons la mémoire d'éléphant de l'Amstrad Hebdogiciel n°119 , Patrick Dublanchet
|