Suivez-nous sur X

|
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z,
ALL
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
A propos d'Obligement
|
|
David Brunet
|
|
|
|
Dossier : Liste des instructions du 68000
(Article écrit par Loïc Far et extrait d'Amiga News Tech - mai 1991)
|
|
Après avoir vu dans ce précédent article les registres
et exceptions du 68000, nous allons maintenant détailler les instructions de ce processeur.
Dans la liste qui suit, je décris les instructions par ordre alphanumérique croissant, en précisant
l'opération effectuée, la ou les syntaxes possibles, la ou les tailles autorisées, le codage en mémoire
de l'instruction (seul le code opératoire sur 16 bits est décrit ; des données supplémentaires, jusqu'à
10 octets en tout, peuvent apparaître pour certaines instructions) et les drapeaux du registre de conditions
(CCR) affectés. Presque toutes les instructions font appel à la notion d'adresse effective (notée <ea>
pour "<effective address>"). Il s'agit du ou des modes d'adressages autorisés. codé(s) sur 6 bits, d'après
le tableau du précédent article.
Évidemment, toutes les instructions n'autorisent pas tous les modes d'adressages.
Pour plus d'information, téléchargez le manuel d'utilisation du 68000.
Les instructions conditionnelles (Bcc, DBcc, Scc) codent la condition sur 4 bits, d'après le tableau suivant.
Code |
Condition |
0000 |
F (false) |
0001 |
T (true) |
0010 |
HI (high) |
0011 |
LS (less ou same) |
0100 |
CC (cary clear) |
0101 |
CS (cary set) |
0110 |
NE (not equal) |
0111 |
EQ (equal) |
1000 |
VC (overflow clear) |
1001 |
VS (overflow set) |
1010 |
PL (plus) |
1011 |
MI (minus) |
1100 |
GE (greater ou equal) |
1101 |
LT (less than) |
1110 |
GT (greater than) |
1111 |
LE (less ou equal) |
Liste des instructions
ABCD |
Addition décimale avec le bit d'extension |
Syntaxe |
ABCD Dx,Dy
ABCD -(Ay),-(Ax) |
Taille |
Octet |
Format |
15 14 13 12 | 11 10 09 | 08 07 06 05 04 03 | 02 01 00
1 1 0 0 | Rx Rx Rx | 1 0 0 0 0 M | Ry Ry Ry
|
Notes |
- Rx : registre source (0-7).
- Ry : registre destination (0-7).
- M : Mode (0=registres de données, 1=registres d'adresse).
|
Drapeaux |
- N : indéfini.
- Z : 0 si le résultat est non nul, inchangé sinon.
- C : 1 si une retenue est générée, 0 sinon.
- X : idem C.
|
ADD |
Addition binaire |
Syntaxe |
ADD <ea>,Dn
ADD Dn,<ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
1 1 0 1 | Registre | OP-Mode | Adresse effective
|
Notes |
- Registre : numéro du registre de données (0-7).
- OP-Mode :
Octet |
Mot |
Long |
|
000 |
001 |
011 |
(syntaxe 1) |
100 |
101 |
110 |
(syntaxe 2) |
|
Drapeaux |
- N : 1 si le résultat est négatif, 0 sinon.
- Z : 1 si le résultat est nul, 0 sinon.
- V : 1 si débordement, 0 sinon.
- C : 1 si retenue, 0 sinon.
- X : idem C.
|
ADDA |
Addition binaire avec registre d'adresse |
Syntaxe |
ADDA <ea>,An |
Taille |
Mot, mot long |
Format |
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
1 1 0 1 | Registre | OP-Mode | Adresse effective
|
Notes |
- Registre : numéro du registre d'adresse (0-7).
- OP-Mode : 011=opération sur un mot (étendu à 32 bits), 111=opération sur
un long.
|
Drapeaux |
|
ADDI |
Addition binaire immédiate |
Syntaxe |
ADDI #donnée,<ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 11 10 09 08 | 07 06 | 05 04 03 02 01 00
0 0 0 0 0 1 1 0 | Taille | Adresse Effective
|
Notes |
- Taille : 00=octet, 01=mot, 10=long.
- La donnée est codée dans le mot (Taille-00 ou 01) ou dans le mot long
(Taille=10) suivant le code opératoire.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : 1 si débordement, 0 sinon.
- C : 1 si retenue, 0 sinon.
- X : idem C.
|
ADDQ |
Addition binaire immédiate rapide |
Syntaxe |
ADDQ #donnée, <ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 | 11 10 09 | 08 | 07 06 | 05 04 03 02 01 00
0 1 0 1 | Donnée | 0 | Taille | Adresse effective
|
Notes |
- Donnée : codage de la donnée immédiate, de 000 à 111 (000=8).
- Taille : 00=octet, 01=mot, 10=long.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nui, 0 sinon.
- V : 1 si débordement, 0 sinon.
- C : 1 si retenue, 0 sinon.
- X : idem C.
- Si l'addition concerne un registre d'adresse, les drapeaux restent inchangés.
|
ADDX |
Addition binaire avec le bit d'extension |
Syntaxe |
ADDX Dx,Dy
ADDX -(Ay),-(Ax) |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 | 11 10 09 | 08 | 07 06 | 05 04 03 | 02 01 00
1 1 0 1 | Rx Rx Rx | 1 | Taille | 0 0 M | Ry Ry Ry
|
Notes |
- M : 0=registres de données, 1=registres d'adresse.
- Taille : 00=octet, 01=mot, 10=long.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, inchangé sinon.
- V : 1 si débordement, 0 sinon.
- C : 1 si retenue, 0 sinon.
- X : idem C.
|
AND |
Et logique |
Syntaxe |
AND <ea>,Dn
AND Dn,<ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
1 1 0 0 | Registre | OP-Mode | Adresse effective
|
Notes |
- Registre : numéro du registre de données (0-7).
- OP-Mode :
Octet |
Mot |
Long |
|
000 |
001 |
010 |
(syntaxe 1) |
100 |
101 |
110 |
(syntaxe 2) |
|
Drapeaux |
- N : 1 si résultat négatif (MSB=1), 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : toujours 0.
- X : inchangé.
|
ANDI |
Et logique immédiat |
Syntaxe |
ANDI #donnée,<ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 11 10 09 08 | 07 06 | 05 04 03 02 01 00
0 0 0 0 0 0 1 0 | Taille | Adresse Effective
|
Notes |
- Taille : 00=octet, 01=mot, 10=long.
- La donnée est codée dans le mot (Taille-0 ou 01) ou dans le mot long (Taille=10)
suivant le code opératoire.
|
Drapeaux |
- N : 1 si résultat négatif (MS8=1), 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : toujours 0.
- X : inchangé.
|
ANDI to CCR |
Et logique immédiat avec CCR |
Syntaxe |
ANDI #donnée,CCR |
Taille |
Octet (5 bits) |
Format |
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
0 0 0 0 0 0 1 0 0 0 1 1 1 1 0 0
|
Notes |
- La donnée (8 bits) est codée dans le mot suivant le code opératoire.
|
Drapeaux |
- N : 0 si le bit 3 de la donnée est 0, inchangé sinon.
- Z : 0 si le bit 2 de la donnée est 0, inchangé sinon.
- V : 0 si le bit 1 de la donnée est 0, inchangé sinon.
- C : 0 si le bit 0 de la donnée est 0, inchangé sinon.
- X : 0 si le bit 4 de la donnée est 0, inchangé sinon.
|
ANDI to SR |
Et logique immédiat avec SR Instruction privilégiée |
Syntaxe |
ANDI #donnée,SR |
Taille |
Mot (tous les bits ne sont pas pris en compte) |
Format |
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
0 0 0 0 0 0 1 0 0 1 1 1 1 1 0 0
|
Notes |
- La donnée (16 bits) est codée dans le mot suivant le code opératoire.
|
Drapeaux |
- N : 0 si le bit 3 de la donnée est 0, inchangé sinon.
- Z : 0 si le bit 2 de la donnée est 0, inchangé sinon.
- V : 0 si le bit 1 de la donnée est 0, inchangé sinon.
- C : 0 si le bit 0 de la donnée est 0, inchangé sinon.
- X : 0 si le bit 4 de la donnée est 0, inchangé sinon.
|
ASL, ASR |
Décalage arithmétique |
Syntaxe |
ASx Dx,Dy
ASx #donnée,Dy
ASx <ea>
x=L (Left, gauche) ou R (Right, droite) |
Taille |
Octet, mot, mot long |
Format |
Décalage d'un registre :
15 14 13 12 | 11 10 09 | 08 | 07 06 | 05 04 03 | 02 01 00
1 1 1 0 | Nombre | D | Taille | I 0 0 | Registre
Décalage d'une adresse :
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
1 1 1 0 0 0 0 D 1 1 | Adresse Effective
|
Notes |
- Nombre : nombre de décalages ou numéro du registre de données Dx
le contenant (2e syntaxe).
- D : 0=décalage à droite (ASR), 1=décalage à gauche (ASL).
- Taille : 00=octet, 01=mot, 10=mot long.
- I : 0=Nombre indique le nombre de décalages (0-7, 0=8),
1=Nombre indique le registre contenant le nombre de décalages (modulo 64).
|
Drapeaux |
- N : 1 si résultat négatif (MSB=1), 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : 1 si le MSB est modifié pendant le décalage, 0 sinon.
- C : égal au dernier bit sorti de l'opérande.
- X : idem C.
|
Bcc |
Branchement conditionnel |
Syntaxe |
Bcc <label> |
Taille |
Octet, mot |
Format |
15 14 13 12 | 11 10 09 08 | 07 06 05 04 03 02 01 00
0 1 1 0 | Condition | Déplacement (8 bits)
|
Notes |
- Le déplacement sur 8 bits est codé dans le code opératoire : s'il vaut 0,
le déplacement sur 16 bits est codé dans le mot suivant le code opératoire.
|
Drapeaux |
|
BCHG |
Test et inversion d'un bit |
Syntaxe |
BCHG Dn,<ea>
BCHG #donnée,<ea> |
Taille |
Octet, mot long |
Format |
Un registre Dn contient le nombre du bit, modulo 32 :
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
0 0 0 0 | Registre | 1 0 1 | Adresse Effective
Une donnée immédiate indique le numéro du bit :
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
0 0 0 0 1 0 0 0 0 1 | Adresse Effective
|
Notes |
- Registre : numéro du registre de données (0-7).
- La donnée est codée sur 8 bits dans le mot suivant le code opératoire.
Si l'adresse effective est une adresse, seul un octet est concerné.
|
Drapeaux |
- N : inchangé.
- Z : 1 si le bit testé est 0, 0 sinon.
- V : inchangé.
- C : inchangé.
- X : inchangé.
|
BCLR |
Test et mise à 0 d'un bit |
Syntaxe |
BCLR Dn,<ea>
BCLR #donnée,<ea> |
Taille |
Octet, mot long |
Format |
Un registre Dn contient le numéro du bit, modulo 32 :
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
0 0 0 0 | Registre | 1 1 0 | Adresse Effective
Une donnée immédiate indique le numéro du bit :
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
0 0 0 0 1 0 0 0 1 0 | Adresse Effective
|
Notes |
- Registre : numéro du registre de données (0-7).
- La donnée est codée sur 8 bits dans le mot suivant le code opératoire.
Si l'adresse effective est une adresse, seul un octet est concerné.
|
Drapeaux |
- N : inchangé.
- Z : 1 si le bit testé est 0, 0 sinon.
- V : inchangé.
- C : inchangé.
- X : inchangé.
|
BRA |
Branchement inconditionnel |
Syntaxe |
BRA <label> |
Taille |
Octet, mot |
Format |
15 14 13 12 11 10 09 08 | 07 06 05 04 03 02 01 00
0 1 1 0 0 0 0 0 | Déplacement (8 bits)
|
Notes |
- Le déplacement sur 8 bits est codé dans le code opératoire. S'il vaut
0, le déplacement sur 16 bits est codé dans le mot suivant le code
opératoire.
|
Drapeaux |
|
BSET |
Test et mise à 1 d'un bit |
Syntaxe |
BSET Dn,<ea>
BSET #donnée,<ea> |
Taille |
Octet, mot long |
Format |
Un registre Dn contient le numéro du bit, modulo 32 :
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
0 0 0 0 | Registre | 1 1 1 | Adresse Effective
Une donnée immédiate indique le numéro du bit :
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
0 0 0 0 1 0 0 0 1 1 | Adresse Effective
|
Notes |
- Registre : numéro du registre de données (0-7).
- La donnée est codée sur 8 bits dans le mot suivant le code opératoire.
Si l'adresse effective est une adresse, seul un octet est concerné.
|
Drapeaux |
- N : inchangé.
- Z : 1 si le bit testé est 0, 0 sinon.
- V : inchangé.
- C : inchangé.
- X : inchangé.
|
BSR |
Branchement à un sous-programme |
Syntaxe |
BSR <label> |
Taille |
Octet, mot |
Format |
15 14 13 12 11 10 09 08 | 07 06 05 04 03 02 01 00
0 1 1 0 0 0 0 1 | Déplacement (8 bits)
|
Notes |
- Le déplacement sur 8 bits est codé dans le code opératoire. S'il vaut 0,
le déplacement sur 16 bits est codé dans le mot suivant le code opératoire.
|
Drapeaux |
|
BTST |
Test d'un bit |
Syntaxe |
BTST Dn,<ea>
BTST #donnée,<ea> |
Taille |
Octet, mot long |
Format |
Un registre Dn contient le numéro du bit, modulo 32 :
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
0 0 0 0 | Registre | 1 0 0 | Adresse Effective
Une donnée immédiate indique le numéro du bit :
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
0 0 0 0 1 0 0 0 0 0 | Adresse Effective
|
Notes |
- Registre : numéro du registre de données (0-7).
- La donnée est codée sur 8 bits dans le mot suivant le code opératoire.
Si l'adresse effective est une adresse, seul un octet est concerné.
|
Drapeaux |
- N : inchangé.
- Z : 1 si le bit testé est 0, 0 sinon.
- V : inchangé.
- C : inchangé.
- X : inchangé.
|
CHK |
Test de limites Instruction privilégiée |
Syntaxe |
CHK <ea>,Dn |
Taille |
Mot |
Format |
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
0 1 0 0 | Registre | 1 1 0 | Adresse effective
|
Notes |
- Registre : numéro du registre à tester.
- Cette instruction teste les 16 bits de poids faible du
registre spécifié et déclenche une exception numéro 6 si ce registre
est inférieur à 0 ou supérieur à <ea>.
|
Drapeaux |
- N : 1 si Dn<0, 0 si Dn><ea>.
- Z : indéfini.
- V : indéfini.
- C : indéfini.
- X : inchangé.
|
CLR |
Mise à 0 |
Syntaxe |
CLR <ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 11 10 09 08 | 07 06 | 05 04 03 02 01 00
0 1 0 0 0 0 1 0 | Taille | Adresse effective
|
Notes |
- Taille : 00=octet, 01=mot, 10=mot long.
|
Drapeaux |
- N : 0.
- Z : 1.
- V : 0.
- C : 0.
- X : inchangé.
|
CMP |
Comparaison |
Syntaxe |
CMP <ea>,Dn |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
1 0 1 1 | Registre | OP-Mode | Adresse effective
|
Notes |
- Registre : numéro du registre de données (0-7).
- OP-Mode : 000=octet, 001=mot, 010=mot long.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : 1 si débordement, 0 sinon.
- C : 1 si retenue, 0 sinon.
- X : inchangé.
|
CMPA |
Comparaison d'adresse |
Syntaxe |
CMPA <ea>,An |
Taille |
Mot, mot long |
Format |
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
1 0 1 1 | Registre | OP-Mode | Adresse effective
|
Notes |
- Registre : numéro du registre d'adresse (0-7).
- OP-Mode : 011=mot, 111=mot long.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : 1 si débordement, 0 sinon.
- C : 1 si retenue, 0 sinon.
- X : inchangé.
|
CMPI |
Comparaison immédiate |
Syntaxe |
CMPI #donnée,<ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 11 10 09 08 | 07 06 | 05 04 03 02 01 00
0 0 0 0 1 1 0 0 | Taille | Adresse effective
|
Notes |
- Taille : 00=octet, 01=mot, 10=mot long.
- La donnée est codée dans le mot (Taille=00 ou 01) ou dans le " mot long (Taille=10) suivant le code opératoire.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : 1 si débordement, 0 sinon.
- C : 1 si retenue, O sinon.
- X : inchangé.
|
CMPM |
Comparaison mémoire |
Syntaxe |
CMPM (Ay)+,(Ax)+ |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 | 11 10 09 08 | 07 06 | 05 04 03 | 02 01 00
1 0 1 1 | Ax Ax Ax 1 Taille 0 0 1 Ay Ay Ay
|
Notes |
- Ax : registre source.
- Ay : registre destination.
- Taille : 00=octet, 01=mot long.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : 1 si débordement, 0 sinon.
- C : 1 si retenue, 0 sinon.
- X : inchangé.
|
DBcc |
Test, décrémentation et branchement |
Syntaxe |
DBcc Dn,<label> |
Taille |
Mot |
Format |
15 14 13 12 | 11 10 09 08 | 07 06 05 04 03 | 02 01 00
0 1 0 1 | Condition | 1 1 0 0 1 | Registre
|
Notes |
- Registre : numéro du registre de données (0-7).
- Le déplacement (16 bits) est codé dans le mot suivant le code opératoire.
|
Drapeaux |
|
DIVS |
Division signée |
Syntaxe |
DIVS <ea>,Dn |
Taille |
Mot |
Format |
15 14 13 12 | 11 10 09 08 07 06 | 05 04 03 02 01 00
1 0 0 0 | Registre 1 1 1 | Adresse effective
|
Notes |
- Registre : numéro du registre de données (0-7).
|
Drapeaux |
- N : 1 si quotient négatif, 0 sinon. Indéfini si V=1.
- Z : 1 si quotient nul, 0 sinon. Indéfini si V=1.
- V : 1 si débordement, 0 sinon.
- C : toujours 0.
- X : inchangé.
|
DIVU |
Division non signée |
Syntaxe |
DIVU <ea>,Dn |
Taille |
Mot |
Format |
15 14 13 12 | 11 10 09 08 07 06 | 05 04 03 02 01 00
1 0 0 0 | Registre 0 1 1 | Adresse effective
|
Notes |
- Registre : numéro du registre de données (0-7).
|
Drapeaux |
- N : 1 si quotient négatif, 0 sinon. Indéfini si V=1.
- Z : 1 si quotient nul, 0 sinon. Indéfini si V=1.
- V : 1 si débordement, 0 sinon.
- C : toujours 0.
- X : inchangé.
|
EOR |
Ou exclusif |
Syntaxe |
EOR Do,<ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
1 0 1 1 | Registre | OP-Mode | Adresse effective
|
Notes |
- Registre : numéro du registre de données (0-7).
- OP-Mode : 100=octet, 101=mot, 110=mot long.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : toujours 0.
- X : inchangé.
|
EORI |
Ou exclusif immédiat |
Syntaxe |
EORI #donnée,<ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 11 10 09 08 | 07 06 | 05 04 03 02 01 00
0 0 0 0 1 0 1 0 | Taille | Adresse effective
|
Notes |
- Taille : 00=octet, 01=mot, 10=mot long.
- La donnée est codée dans le mot (Taille-00 ou 01) ou dans le mot long
(Taille=10) suivant le code opératoire.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : toujours 0.
- X : inchangé.
|
EORI to CCR |
Ou exclusif immédiat avec CCR |
Syntaxe |
EORI #donnée,CCR |
Taille |
Octet |
Format |
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
0 0 0 0 1 0 1 0 0 0 1 1 1 1 0 0
|
Notes |
- La donnée (8 bits) est codée dans le mot suivant le code opératoire.
|
Drapeaux |
- N : 1 si le bit 3 de la donnée est 1, inchangé sinon.
- Z : 1 si le bit 2 de la donnée est 1, inchangé sinon.
- V : 1 si le bit 1 de la donnée est 1, inchangé sinon.
- C : 1 si le bit 0 de la donnée est 1, inchangé sinon.
- X : 1 si le bit 4 de la donnée est 1, inchangé sinon.
|
EORI to SR |
Ou exclusif immédiat avec SR Instruction privilégiée |
Syntaxe |
EORI #donnée,SR |
Taille |
Mot |
Format |
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
0 0 0 0 1 0 1 0 0 1 1 1 1 1 0 0
|
Notes |
- La donnée (16 bits) est codée dans le mot suivant le code opératoire.
|
Drapeaux |
- N : 1 si le bit 3 de la donnée est 1, inchangé sinon.
- Z : 1 si le bit 2 de la donnée est 1, inchangé sinon.
- V : 1 si le bit 1 de la donnée est 1, inchangé sinon.
- C : 1 si le bit 0 de la donnée est 1, inchangé sinon.
- X : 1 si le bit 4 de la donnée est 1, inchangé sinon.
|
EXG |
Échange de registre |
Syntaxe |
EXG Rx,Ry |
Taille |
Mot long |
Format |
15 14 13 12 | 11 10 09 | 08 | 07 06 05 04 03 | 02 01 00
1 1 0 0 | Rx Rx Rx | 1 | OP-Mode | Ry Ry Ry
|
Notes |
- OP-Mode : 01000=registres de données, 01001=registres d'adresse, 10001=registre de données et registre d'adresse.
- Rx : numéro du premier registre (registre de donnée si OP-Mode=10001).
- Ry : numéro du second registre.
|
Drapeaux |
|
EXT |
Extension de signe |
Syntaxe |
EXT Dn |
Taille |
Mot, mot long |
Format |
15 14 13 12 11 10 09 | 08 07 06 | 05 04 03 | 02 01 00
0 1 0 0 1 0 0 | OP-Mode | 0 0 0 | Registre
|
Notes |
- OP-Mode : 010=extension au mot, 011=extension au mot long.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : toujours 0.
- X : inchangé.
|
ILLEGAL |
Instruction illégale |
Syntaxe |
ILLEGAL |
Taille |
- |
Format |
$4AFC
|
Notes |
- Cette instruction génère une exception de vecteur 4.
|
Drapeaux |
|
JMP |
Saut inconditionnel |
Syntaxe |
JMP <ea> |
Taille |
- |
Format |
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
0 1 0 0 1 1 1 0 1 1 | Adresse effective
|
Notes |
|
Drapeaux |
|
JSR |
Saut à un sous-programme |
Syntaxe |
JSR <ea> |
Taille |
- |
Format |
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
0 1 0 0 1 1 1 0 1 0 | Adresse effective
|
Notes |
|
Drapeaux |
|
LEA |
Chargement d'adresse effective |
Syntaxe |
LEA <ea>,An |
Taille |
Mot long |
Format |
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
0 1 0 0 | Registre | 1 1 1 | Adresse effective
|
Notes |
- Registre : numéro du registre d'adresse (0-7).
|
Drapeaux |
|
LINK |
Création de liens avec pile |
Syntaxe |
LINK An,#donnée |
Taille |
- |
Format |
15 14 13 12 11 10 09 08 07 06 05 04 03 | 02 01 00
0 1 0 0 1 1 1 0 0 1 0 1 0 | Registre
|
Notes |
- Registre : numéro du registre d'adresse (0-7).
|
Drapeaux |
|
LSL, LSR |
Décalage logique |
Syntaxe |
LSx Dx,Dy
LSx #donnée,Dy
LSx <ea>
x=L (Left, gauche) ou R (Right, droite) |
Taille |
Octet, mot, mot long |
Format |
Décalage d'un registre :
15 14 13 12 | 11 10 09 | 08 | 07 06 | 05 04 03 | 02 01 00
1 1 1 0 | Nombre | D | Taille | I 0 1 | Registre
Décalage d'une adresse :
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
1 1 1 0 0 0 1 D 1 1 | Adresse Effective
|
Notes |
- Nombre : nombre de décalages ou numéro du registre de données le contenant (0-7).
- D : 0=décalage à gauche, 1=décalage à droite.
- Taille : 00=octet, 01=mot, 10=mot long.
- I : 0=Nombre contient le nombre de décalages (0-7, 0=8),
1=Nombre indique le registre contenant le nombre de décalages (modulo 64).
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : 1 si le dernier bit sorti de l'opérande était 1.
- X : idem C.
|
MOVE |
Transfert de données |
Syntaxe |
MOVE <ea>,<ea> |
Taille |
Octet, mot, mot long. |
Format |
15 14 | 13 12 | 11 10 09 08 07 06 | 05 04 03 02 01 00
0 0 | Taille | Adresse effective | Effective Adresse
|
Notes |
- Taille : 00=octet, 01=mot, 10=mot long.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : toujours 0.
- X : inchangé.
|
MOVE to CCR |
Transfert vers CCR |
Syntaxe |
MOVE <ea>,CCR |
Taille |
Octet |
Format |
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
0 1 0 0 0 1 0 0 1 1 | Adresse effective
|
Notes |
- Taille : 00=octet, 01=mot, 10=mot long.
|
Drapeaux |
- N : 1 si le bit 3 de la source est 1, 0 sinon.
- Z : 1 si le bit 2 de la source est 1, 0 sinon.
- V : 1 si le bit 1 de la source est 1, 0 sinon.
- C : 1 si le bit 0 de la source est 1, 0 sinon.
- X : 1 si le bit 4 de la source est 1, 0 sinon.
|
MOVEA |
Transfert vers un registre d'adresse |
Syntaxe |
MOVEA <ea>,An |
Taille |
Mot, mot long |
Format |
15 14 | 13 12 11 10 09 | 08 07 06 | 05 04 03 02 01 00
0 0 | Taille registre | 0 0 1 | Adresse effective
|
Notes |
- Taille : 11=mot, 10=mot long.
|
Drapeaux |
|
MOVE USP |
Transfert de ou vers USP Instruction privilégiée |
Syntaxe |
MOVE USP,An
MOVE An,USP |
Taille |
Mot long |
Format |
15 14 13 12 11 10 09 08 07 06 05 04 03 | 02 01 00
0 1 0 0 1 1 1 0 0 1 1 0 D | Registre
|
Notes |
- D : 0=registre vers USP, 1=USP vers registre.
- Registre : numéro du registre d'adresse (0-7).
|
Drapeaux |
|
MOVE from SR |
Transfert depuis SR Instruction privilégiée sur les 68010 et supérieurs |
Syntaxe |
MOVE SR,<ea> |
Taille |
Mot |
Format |
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
0 1 0 0 0 0 0 0 1 1 | Adresse effective
|
Notes |
|
Drapeaux |
|
MOVE to SR |
Transfert vers SR Instruction privilégiée |
Syntaxe |
MOVE <ea>,SR |
Taille |
Mot |
Format |
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
0 1 0 0 0 1 1 0 1 1 | Adresse effective
|
Notes |
|
Drapeaux |
- N : 1 si le bit 3 de l'opérande est 1, inchangé sinon.
- Z : 1 si le bit 2 de l'opérande est 1, inchangé sinon.
- V : 1 si le bit 1 de l'opérande est 1, inchangé sinon.
- C : 1 si le bit 0 de l'opérande est 1, inchangé sinon.
- X : 1 si le bit 4 de l'opérande est 1, inchangé sinon.
|
MOVEM |
Transfert vers SR |
Syntaxe |
MOVEM registres,<ea> |
Taille |
Mot, mot long |
Format |
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
0 1 0 0 1 D 0 0 1 T | Adresse effective
|
Notes |
- D : 0=registres vers mémoire, 1=mémoire vers registres.
- T : 0=mot, 1=mot long.
- Le masque des registres concernés est codé dans le mot suivant le code opératoire.
|
Drapeaux |
|
MOVEP |
Transfert vers un périphérique |
Syntaxe |
MOVEP Dx,d(Ay)
MOVEP D(Ay),Dx |
Taille |
Mot, mot long |
Format |
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 | 02 01 00
0 0 0 0 | Registre | OP-Mode | 0 0 1 | Registre
|
Notes |
- OP-Mode : 100=mot mémoire vers registre, 101=mot long mémoire vers registre, 110=mot registre vers mémoire,
111=mot long registre vers mémoire.
- Le déplacement (16 bits) est codé dans le mot suivant le code opératoire.
|
Drapeaux |
|
MOVEQ |
Transfert immédiat rapide |
Syntaxe |
MOVEQ #donnée,Dx |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 | 11 10 09 | 08 | 07 06 05 04 03 02 01 00
0 1 1 1 | Registre | 0 | Donnée 8 bits
|
Notes |
- Registre : numéro du registre de donnée (0-7).
- Donnée : donnée signée sur 8 bits.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : toujours 0.
- X : inchangé.
|
MULS |
Multiplication signée |
Syntaxe |
MULS <ea>,Dn |
Taille |
Mot |
Format |
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
1 1 0 0 | Registre | 1 1 1 | Adresse effective
|
Notes |
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : toujours 0.
- X : inchangé.
|
MULU |
Multiplication non signée |
Syntaxe |
MULU <ea>,Dn |
Taille |
Mot |
Format |
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
1 1 0 0 | Registre | 0 1 1 | Adresse effective
|
Notes |
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : toujours 0.
- X : inchangé.
|
NBCD |
Complémentation décimale avec X |
Syntaxe |
NBCD <ea> |
Taille |
Octet |
Format |
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
0 1 0 0 1 0 0 0 0 0 | Adresse effective
|
Notes |
|
Drapeaux |
- N : indéfini.
- Z : 0 si résultat non-nul, inchangé sinon.
- V : indéfini.
- C : 1 si retenue, 0 sinon.
- X : idem C.
|
NEG |
Négation |
Syntaxe |
NEG <ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 11 10 09 08 | 07 06 | 05 04 03 02 01 00
0 1 0 0 0 1 0 0 | Taille | Adresse effective
|
Notes |
- Taille : 00=octet, 01=mot, 10=mot long.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : 1 si débordement, 0 sinon.
- C : 1 si retenue, 0 sinon.
- X : idem C.
|
NEGX |
Négation avec X |
Syntaxe |
NEGX <ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 11 10 09 08 | 07 06 | 05 04 03 02 01 00
0 1 0 0 0 0 0 0 | Taille | Adresse effective
|
Notes |
- Taille : 00=octet, 01=mot, 10=mot long.
|
Drapeaux |
- N : indéfini.
- Z : 1 si résultat non-nul, inchangé sinon.
- V : indéfini.
- C : 1 si retenue, 0 sinon.
- X : idem C.
|
NOP |
Pas d'opération |
Syntaxe |
NOP |
Taille |
- |
Format |
$4E71 |
Drapeaux |
|
NOT |
Complémentation à 1 |
Syntaxe |
NOT <ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 11 10 09 08 | 07 06 | 05 04 03 02 01 00
0 1 0 0 0 1 1 0 | Taille | Adresse effective
|
Notes |
- Taille : 00=octet, 01=mot, 10=mot long.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : toujours 0.
- X : inchangé.
|
OR |
Ou logique |
Syntaxe |
OR <ea>,Dn
OR Dn,<ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
1 0 0 0 | Registre | OP-Mode | Adresse effective
Octet |
Mot |
Long |
|
000 |
001 |
010 |
(syntaxe 1) |
100 |
101 |
110 |
(syntaxe 2) |
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : toujours 0.
- X : inchangé.
|
ORI |
Ou logique immédiat |
Syntaxe |
ORI #donnée,<ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 11 10 09 08 | 07 06 | 05 04 03 02 01 00
0 0 0 0 0 0 0 0 | Taille | Adresse effective
|
Notes |
- Taille : 00=octet, 01=mot, 10=mot long.
- La donnée est codée dans le mot (Taille=00 ou 01) ou dans le mot long (taille=10) suivant le code opératoire.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : toujours 0.
- X : inchangé.
|
ORI to CCR |
Ou logique immédiat avec CCR |
Syntaxe |
ORI #donnée,CCR |
Taille |
Octet |
Format |
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0
|
Notes |
- La donnée (8 bits) est codée dans le mot suivant le code opératoire.
|
Drapeaux |
- N : 1 si le bit 3 de la donnée est 1, inchangé sinon.
- Z : 1 si le bit 2 de la donnée est 1, inchangé sinon.
- V : 1 si le bit 1 de la donnée est 1, inchangé sinon.
- C : 1 si le bit 0 de la donnée est 1, inchangé sinon.
- X : 1 si le bit 4 de la donnée est 1, inchangé sinon.
|
ORI to SR |
Ou logique immédiat avec SR Instruction privilégiée |
Syntaxe |
ORI #donnée,SR |
Taille |
Mot |
Format |
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0
|
Notes |
- La donnée (16 bits) est codée dans le mot suivant le code opératoire.
|
Drapeaux |
- N : 1 si le bit 3 de la donnée est 1, inchangé sinon.
- Z : 1 si le bit 2 de la donnée est 1, inchangé sinon.
- V : 1 si le bit 1 de la donnée est 1, inchangé sinon.
- C : 1 si le bit 0 de la donnée est 1, inchangé sinon.
- X : 1 si le bit 4 de la donnée est 1, inchangé sinon.
|
PEA |
Empilement d'une adresse effective |
Syntaxe |
PEA <ea> |
Taille |
Mot long |
Format |
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
0 1 0 0 1 0 0 0 0 1 | Adresse effective
|
Drapeaux |
|
RESET |
Remise à 0 des circuits externes Instruction privilégiée |
Syntaxe |
RESET |
Taille |
- |
Format |
$4E70 |
Drapeaux |
|
ROL, ROR |
Rotation |
Syntaxe |
ROx Dx,Dy
ROx #donnée,Dy
ROx <ea>
x=L (Left, gauche) ou R (Right, droite) |
Taille |
Octet, mot, mot long |
Format |
Décalage d'un registre :
15 14 13 12 | 11 10 09 | 08 | 07 06 | 05 04 03 | 02 01 00
1 1 1 0 | Nombre | D | Taille | I 1 1 | Registre
Décalage d'une adresse :
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
1 1 1 0 0 1 1 D 1 1 | Adresse Effective
|
Notes |
- Nombre : nombre de décalages ou numéro du registre de données le contenant (0-7).
- D : 0=décalage à gauche, 1=décalage à droite.
- Taille : 00=octet, 01=mot, 10=mot long.
- I : 0=Nombre contient le nombre de décalages (0-7, 0=8),
1=Nombre indique le registre contenant le nombre de décalages (modulo 64).
|
Drapeaux |
- N : 1 si résultat négatif (MSB=1), 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : 1 si le dernier bit sorti de l'opérande était 1.
- X : idem C.
|
ROXL, ROXR |
Rotation avec X |
Syntaxe |
ROXx Dx,Dy
ROXx #donnée,Dy
ROXx <ea>
x=L (Left, gauche) ou R (Right, droite) |
Taille |
Octet, mot, mot long |
Format |
Décalage d'un registre :
15 14 13 12 | 11 10 09 | 08 | 07 06 | 05 04 03 | 02 01 00
1 1 1 0 | Nombre | D | Taille | I 1 0 | Registre
Décalage d'une adresse :
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
1 1 1 0 0 1 0 D 1 1 | Adresse Effective
|
Notes |
- Nombre : nombre de décalages ou numéro du registre de données le contenant (0-7).
- D : 0=décalage à droite (ASR), 1=décalage à gauche (ASL).
- Taille : 00=octet, 01=mot, 10=mot long.
- I : 0=Nombre indique le nombre de décalages (0-7, 0=8),
1=Nombre indique le registre contenant le nombre de décalages (modulo 64).
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : 1 si le dernier bit sorti de l'opérande était 1.
- X : idem C.
|
RTE |
Retour d'exception |
Syntaxe |
RTE |
Taille |
- |
Format |
$4E73 |
Drapeaux |
- Positionnés d'après le mot dépilé
|
RTS |
Retour et restitution de CCR |
Syntaxe |
RTR |
Taille |
- |
Format |
$4E77
|
Notes |
- CCR doit avoir été empilé avant JSR et BSR.
|
Drapeaux |
- Positionnés d'après le mot dépilé
|
RTS |
Retour de sous-routine |
Syntaxe |
RTS |
Taille |
- |
Format |
$4E75 |
Drapeaux |
|
SBCD |
Soustraction décimale avec le bit d'extension |
Syntaxe |
SBCD Dy,Dx
SBCD -(Ay),-(Ax) |
Taille |
Octet |
Format |
15 14 13 12 | 11 10 09 | 08 07 06 05 04 03 | 02 01 00
1 0 0 0 | Rx Rx Rx | 1 0 0 0 0 M | Ry Ry Ry
|
Notes |
- Rx : registre source (0-7).
- Ry : registre destination (0-7).
- M : Mode (0=registres de données, 1=registres d'adresse).
|
Drapeaux |
- N : indéfini.
- Z : 0 si le résultat est non nul, inchangé sinon.
- V : indéfini.
- C : 1 si une retenue est générée, 0 sinon.
- X : idem C.
|
Scc |
Positionnement conditionnel |
Syntaxe |
Scc <ea> |
Taille |
Octet |
Format |
15 14 13 12 | 11 10 09 08 | 07 06 | 05 04 03 02 01 00
0 1 0 1 | Condition | 1 1 | Adresse effective
|
Notes |
- Rx : registre source (0-7).
- Ry : registre destination (0-7).
- M : Mode (0=registres de données, 1=registres d'adresse).
|
Drapeaux |
- N : indéfini.
- Z : 0 si le résultat est non nul, inchangé sinon.
- C : 1 si une retenue est générée, 0 sinon.
- X : idem C.
|
STOP |
Arrêt du processeur |
Syntaxe |
STOP #donnée |
Taille |
- |
Format |
$4E72
|
Notes |
- La donnée (16 bits) est codée dans le mot suivant le code opératoire.
- La donnée est chargée dans SR et le processeur passe en état arrêté jusqu'à ce qu'une exception Trace ou
une interruption Reset surviennent.
|
Drapeaux |
- Positionné selon la donnée immédiate
|
SUB |
Soustraction binaire |
Syntaxe |
SUB <ea>,Dn
SUB Dn,<ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
1 0 0 1 | Registre | OP-Mode | Adresse effective
|
Notes |
- Registre : numéro du registre de données (0-7).
- OP-Mode :
Octet |
Mot |
Long |
|
000 |
001 |
010 |
(syntaxe 1) |
100 |
101 |
110 |
(syntaxe 2) |
|
Drapeaux |
- N : 1 si le résultat est négatif, 0 sinon.
- Z : 1 si le résultat est nul, 0 sinon.
- V : 1 si débordement, 0 sinon.
- C : 1 si retenue, 0 sinon.
- X : idem C.
|
SUBA |
Soustraction binaire avec registre d'adresse |
Syntaxe |
SUBA <ea>,An |
Taille |
Mot, mot long |
Format |
15 14 13 12 | 11 10 09 | 08 07 06 | 05 04 03 02 01 00
1 0 0 1 | Registre | OP-Mode | Adresse effective
|
Notes |
- Registre : numéro du registre d'adresse (0-7).
- OP-Mode : 011=mot, 111=mot long.
|
Drapeaux |
|
SUBI |
Soustraction binaire immédiate |
Syntaxe |
SUBI #donnée,<ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 11 10 09 08 | 07 06 | 05 04 03 02 01 00
0 0 0 0 0 1 0 0 | Taille | Adresse Effective
|
Notes |
- Taille : 00=octet, 01=mot, 10=long.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : 1 si débordement, 0 sinon.
- C : 1 si retenue, 0 sinon.
- X : idem C.
|
SUBQ |
Soustraction binaire immédiate rapide |
Syntaxe |
SUBQ #donnée, <ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 | 11 10 09 | 08 | 07 06 | 05 04 03 02 01 00
0 1 0 1 | Donnée | 1 | Taille | Adresse effective
|
Notes |
- Donnée : codage de la donnée immédiate, de 000 à 111 (000=8).
- Taille : 00=octet, 01=mot, 10=long.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nui, 0 sinon.
- V : 1 si débordement, 0 sinon.
- C : 1 si retenue, 0 sinon.
- X : idem C.
|
SUBX |
Soustraction binaire avec le bit d'extension |
Syntaxe |
SUBX Dy,Dx
SUBX -(Ay),-(Ax) |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 | 11 10 09 | 08 | 07 06 | 05 04 03 | 02 01 00
1 0 0 1 | Rx Rx Rx | 1 | Taille | 0 0 M | Ry Ry Ry
|
Notes |
- Rx : registre source.
- Ry : registre destination.
- M : 0=registres de données, 1=registres d'adresse.
- Taille : 00=octet, 01=mot, 10=long.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 0 si résultat nul, inchangé sinon.
- V : 1 si débordement, 0 sinon.
- C : 1 si retenue, 0 sinon.
- X : idem C.
|
SWAP |
Échange de mots |
Syntaxe |
SWAP Dn |
Taille |
- |
Format |
15 14 13 12 11 10 09 08 07 06 05 04 03 | 02 01 00
0 1 0 0 1 0 0 0 0 1 0 0 0 | Registre
|
Notes |
- Registre : numéro du registre de données (0-7).
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : toujours 0.
- X : inchangé.
|
TAS |
Test et positionnement |
Syntaxe |
TAS <ea> |
Taille |
Octet |
Format |
15 14 13 12 11 10 09 08 07 06 | 05 04 03 02 01 00
0 1 0 0 1 0 1 0 1 1 | Adresse effective
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : toujours 0.
- X : inchangé.
|
TRAP |
Instruction TRAP |
Syntaxe |
TRAP #numéro |
Taille |
- |
Format |
15 14 13 12 11 10 09 08 07 06 05 04 | 03 02 01 00
0 1 0 1 1 1 1 0 0 1 0 0 | Numéro
|
Notes |
- Numéro : numéro de l'exception TRAP à déclencher (0-15).
|
Drapeaux |
|
TRAPV |
Instruction TRAP |
Syntaxe |
TRAPV |
Taille |
- |
Format |
$4E76
|
Drapeaux |
|
TST |
Test |
Syntaxe |
TST <ea> |
Taille |
Octet, mot, mot long |
Format |
15 14 13 12 11 10 09 08 | 07 06 | 05 04 03 02 01 00
0 1 0 0 1 0 1 0 | Taille | Adresse effective
|
Notes |
- Taille : 00=octet, 01=mot, 10=mot long.
|
Drapeaux |
- N : 1 si résultat négatif, 0 sinon.
- Z : 1 si résultat nul, 0 sinon.
- V : toujours 0.
- C : toujours 0.
- X : inchangé.
|
UNLK |
Libération de liens |
Syntaxe |
UNLK An |
Taille |
- |
Format |
15 14 13 12 11 10 09 08 07 06 05 04 03 | 02 01 00
0 1 0 0 1 1 1 0 0 1 0 1 1 | Registre
|
Notes |
- Registre : numéro du registre d'adresse (0-7).
|
Drapeaux |
|
|