COLDFIRE MONTIGNY Eric La fonction ADD Syntaxe assembleur

publicité
COLDFIRE
♥
MONTIGNY Eric
♥
La fonction ADD
Opération : Source + Destination → Destination
Syntaxe assembleur :
ADD.L <adresse effective>source, DDESTINATION
ADD.L DSOURCE, <adresse effective>Destination
Attributs : Taille = longword
Description : La fonction ADD permet d’additionner la valeur de la source opérande, avec l’opérande
destination, et elle stocke le résultat à l’adresse de destination. La taille de l’opération est spécifiquement
longword. Le mode de l’instruction indique avec quel opérande est la source, et comment est la destination.
Le mode DDESTINATION est utilisé lorsque la destination est un registre.
La destination <adresse effective>source est invalide pour un registre de donnée.
La fonction ADDA est utilisée lorsque la destination est un registre d’adresse.
Les fonctions ADDI et ADDQ sont utilisées lorsque la source contient immédiatement la donné (donc par
adressage immédiat).
Format de l’instruction :
15
14
13 12
1
1
0
1
11
10
Registre
9
8
7
6
Mode
opératoire
5
4
3
2
1
0
Adresse effect. (Source)
Mode
Registre
Champs des instructions :
♥ Champ sur le registre :
Spécifier le registre de donnée.
♥ Champ sur le mode opératoire :
Byte
Word Longword
--010
--110
MONTIGNY Eric.
Traduction en français de la notice du COLDIRE.
Opération
<adresse effective>source + DDESTINATION → DDESTINATION
DSOURCE + <adresse effective>destination → <adresse effective>destination
♥ Champ sur l’adresse effective : Ce champ détermine le mode d’adressage.
♣ Pour une source opérande du type <adresse effective>source, utiliser les modes d’adressages listés
dans ce présent tableau :
Adresse mode
Mode
Registre
Signification
Adressage par registre de données
DY
000
Numéro du registre DY
Adressage par registre d’adresse
AY
001
Numéro du registre AY
Adressage indirect par registre d’adresse
(AY)
010
Numéro du registre AY
Adressage indirect par registre d’adresse, avec post
(AY)+
011
Numéro du registre AY
incrément.
-(AY)
100
Numéro du registre AY
(d16,AY)
101
Numéro du registre AY
(d8,AY,Xi)
110
Numéro du registre AY
(xxx).W
111
000
(xxx).L
#<data>
(d16,PC)
(d8,PC,Xi)
111
111
111
111
001
100
010
011
Adressage indirect par registre d’adresse, avec pré
décrément.
Adressage indirect par registre d’adresse, avec
déplacement sur 16 bits.
Adressage indirect avec déplacement sur 8 bits, et registre
d’index.
Adressage absolu sur un word (16 bits), avec une
extension de signe sur 32 bits.
Adressage absolu sur un long-word (32 bits).
Adressage immédiat
**
**
♣ Pour la destination de l’opérande, du type <adresse effective>destination, utiliser les modes
d’adressages listés dans ce présent tableau :
Adresse mode
Mode
Registre
Signification
Adressage par registre de données
DX
----Adressage par registre d’adresse
AX
----Adressage indirect par registre d’adresse
(AX)
010
Numéro du registre AX
Adressage indirect par registre d’adresse, avec post
(AX)+
011
Numéro du registre AX
incrément.
-(AX)
100
Numéro du registre AX
(d16,AX)
101
Numéro du registre AX
(d8,AX,Xi)
110
Numéro du registre AX
(xxx).W
111
000
(xxx).L
#<data>
(d16,PC)
(d8,PC,Xi)
111
-------
001
-------
Adressage indirect par registre d’adresse, avec pré
décrément.
Adressage indirect par registre d’adresse, avec
déplacement sur 16 bits.
Adressage indirect avec déplacement sur 8 bits, et registre
d’index.
Adressage absolu sur un word (16 bits), avec une
extension de signe sur 32 bits.
Adressage absolu sur un long-word (32 bits).
Adressage immédiat
**
**
La fonction ADD est difficile à utiliser, méfiance !
MONTIGNY Eric.
Traduction en français de la notice du COLDIRE.
Téléchargement