★ CODING ★ CLASSEURS WEKA ★ Comment exploiter toutes les ressources et augmenter les performances de votre AMSTRAD CPC ★ |
4/2.3.3 - Les mots-clés de l'assembleur Z80 et leur utilisation : Lecture, écriture, échanges et opérations sur les registres | Coding Classeurs Weka |
4/2 - Assembleur Z80 : Définitions et rappels de base4/2.3 - Les mots-clés de l'assembleur Z80 et leur utilisation III. Lecture, écriture, échanges et opérations sur les registres La différence avec le groupe d'instructions précédent vient du fait que les opérations sont faites entre registres et ne font jamais intervenir une mémoire. Reportez-vous à la partie 4 chapitre 2.2 pour prendre connaissance des modes d'adressage utilisés par le 280, car ce qui suit fait largement appel à ces notions. * Adressage immédiat sur 8 bits : LD X, VAL8 où X peut être un des registres suivants : A, B, C, D, E, H, ou L. * Adressage immédiat sur 16 bits : LD XX, VAL16 où XX peut être un des registres pairs suivants : BC, DE, HL, SP, IX ou IY. Les indicateurs ne sont pas affectés. * Entre registres sur 8 bits : LD R1,R2 où R1 et R2 sont l'un des registres suivants : A, B, D, E, H ou L * Entre A et les registres I ou R : LD A,I charge dans A le registre d'interruptions. Les indicateurs sont modifiés : H = 0, N = 0, C inchangé, S et Z modifiés, P/V = état de masquage des interruptions (IFF). LD A,R charge dans A le registre de rafraîchissement mémoire. Les indicateurs sont modifiés : LD I,A modifie te registre d'interruption, et Les indicateurs ne sont pas affectés par ce deux dernières instructions. * Entre deux registres sur 16 bits : LD SP, HL Les indicateurs ne sont pas affectés. Ces ordres permettent de charger le pointeur de pile en une fois par (es registres HL, IX ou IY. Généralement, la pile est placée le plus haut possible en mémoire, ou du moins à un endroit qui ne risque pas d'écraser des données ou d'être écrasé par des données. * Echange de registres 16 bits : 1) Echange des registres courants avec les registres secours : EXX Echange les registres BC, DE et HL avec les registres de secours BC' , DE' et HL'. Les indicateurs ne sont pas affectés. EX AF,AF' Echange le registre AF avec le registre de secours AF'. Ces ordres sont pratiques si l'on exécute un sous-programme classique ou de gestion d'interruptions. Si on les place en début et en fin de sous-programme, ils permettent de travailler sur tous les registres sans détruire '?" les valeurs qui y étaient au moment de l'appel du sous-programme. Le registre DE prend 4a valetfr du registre HL, et le registre H L celle du EX (SP),HL La mémoire pointée par le registre pointeur de pile SP prend la valeur contenue dans HL, IX, ou IY.
|