CODING ★ LES INSTRUCTIONS SUPPLEMENTAIRES DU Z80 ★

Bidouilles ACPC n 03 - Les Instructions supplemetaires du Z80
La table donnée ci-dessous contient les mnémoniques des instructions supplémentaires, et leurs codes machine. Les quatre codes de chargement de HX, HY, LX et LY peuvent être suivis par n'importe quelle valeur contenue dans un octet Ici. nous avons utilisé zéro en opérande mais cela n'était qu'à titre d'exemple et c'était plus facile à faire comprendre à l'assembleur. Il faut bien sûr dire à quoi correspondent ces registres aux noms encore plus étranges (de jambon) qu'à l'habitude. HX et LX sont au registre d'index IX ce que H et L sont au double registre HL. HX contient le poids fort de IX et LX en contient le poids faible. Il en va bien sûr de même pour HY et LY envers IY Tous ces codes machine étendent grandement le jeu d'instruction du mode 8 bits de notre bon vieux Z80. Toutes les opérations faites sur ces nouveaux registres ont strictement les mêmes incidences que si elles étaient utilisées avec les registres conventionnels. L'opérateur SLL reg est simplement une instruction de décalage supplémentaire ( Shift left logical ) ou encore décalage logique à gauche. Il compléments à ravir le SRL mais il agit dans l'autre sens. En d'autre termes, il multiplie l'opérande par deux et y ajoute 1. Soit encore un décalage à gauche avec positionnement du bit zéro à un. Pas mal ! Mais, me direz-vous, comment utiliser ces nouveaux codes si mon assembleur ne les comprend pas ?

C'est très simple : si nous vous avons fourni les codes, c'est pour que vous les introduisiez dans vos sources avec par exemple:


LD A,(HL)
DEFB #CB,#37  ;SLL A

Vous n'y comprendrez rien, mais ce qui compte avant tout, c'est que le microprocesseur comprenne, non ? Alors, allons-y gaiement et utilisons à fond ce que papy Zilog nous a laissé. Bon courage !

DD67  LD   HX,A
DD68  LD   HX,B
DD61  LD   HX,C
DD62  LD   HX,D
DB63  LB   HX,E
DD6F  LE   LX,A
DD68  LD   LX,B
DD69  LD   LX,C
DD6A  LD   LX,B
DB6B  LD   LX,E
FD67  LB   HY,A
FD60  LB   HY,B
FB61  LD   HY,C
FD62  LD   HY,D
FD63  LD   HY,E
FB6F  LD   LY,A
FD68  LD   LY,B
FD69  LD   LY,C
FD6A  LB   LY,B
FD6B  LD   LY,E
FD7C  LD   A,HY
FD44  LD   B,HY
FD4C  LD   C,HY
FD54  LD   D,HY
FD5C  LD   E,HY
FD7D  LD   A,LY
FD45  LD   B,LY
FD4D  LD   C,LY
FD55  LD   D,LY
FD5D  LD   E,LY
DD7C  LD   A,HX
DD44  LD   B,HX
DD4C  LD   C,HX
DD54  LD   D,HX
DD5C  LD   E,HX
DD7D  LD   A,LX
DD45  LD   B,LX
DD4D  LD   C,LX
DD55  LD   D,LX
DD5D  LD   E,LX
DD2600 LD   HX,0
DD2E00 LD   LX,0
FD2600 LD   HY,0
FD2E00 LD   LY,0
FD24  INC  HY
FD2C  INC  LY
DD24  INC  HX
DD2C  INC  LX
FD25  DEC HY
FD2D  DEC LY
DD25  DEC HX
DD2D  DEC LX
DD8C  ABC A,HX
DD8D  ADC A,LX
FD8C  ADC A,HY
FD8D  ADC A,LY
DD9C  SBC A,HX
DD9D  SBC A,LX
FD9C  SBC A,HY
FD9D  SBC A.LY
FD84  ADD A,HY
FD85  ADD A,LY
DD84  ADD A,HX
DD85  ADD A,LX
FD94  SUB HY
FD95  SUB LY
DD94  SUB HX
DD95  SUB LX
FDBC  CP HY
FDBD  CP LY
DDBC  CP HX
DDBD  CP LX
FDA4  AND HY
FDA5  AND LY
DDA4  AND HX
DDA5  AND LX
FDB4  OR HY
FDB5  OR LY
DDB4  OR HX
DDB5  OR LX
FDAC  XOR HY
FDAD  XOR LY
DDAC  XOR HX
DDAD  XOR LX
CB37  SLL A
CB38  SLL B
CB31  SLL C
CB32  SLL D
CB33  SLL E
CB34  SLL H
CB35  SLL L
CB36  SLL (HL)

A100% n°3 p38-39

Page précédente : Bidouilles ACPC n°03 - Catalogue décorés
★ AMSTRAD CPC ★ DOWNLOAD ★

Other platform tool:
» asm03cDATE: 2012-08-27
DL: 378
TYPE: text
SiZE: 5Ko
NOTE:

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Coding » Bidouilles ACPC n°08 - RSX editeur de secteurs
» Coding » Assembleur ACPC n°35 - Dossier assembleur
» Coding » Bidouilles ACPC n°46 - Les vecteurs system (4/6)
» Coding » Bidouilles ACPC n°41 - L'art de la compression
» Coding » Assembleur ACPC n°29 - On assemble ensemble
» Coding » Bidouilles ACPC n°17 - Le catalogue AMSDOS
Je participe au site:
» Vous avez des infos personnel, des fichiers que nous ne possédons pas concernent ce programme ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.732-desktop/c
Page créée en 807 millisecondes et consultée 2718 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.