Section courante

A propos

Section administrative du site

Les opérateurs

Les opérateurs sont le fondement même du traitement des opérations mathématique et comparatif de n'importe quel langage, toutefois, le langage de programmation assembleur du 80x86 ne l'utilise pas de la même manière. Puisqu'il s'agit d'un langage de programmation de bas de niveau, les expressions mathématiques doivent retourner un résultat immédiat, donc il ne peut pas avoir aucune forme de variable incluse dans celle-ci, mais les constantes sont autorisées. De plus, certains compilateurs de bas gamme (autre que Macro Assembler de Microsoft (MASM) ou Turbo Assembler de Borland (TASM)) ne support carrément pas les opérateurs mathématiques.

Liste des opérateurs

Opérateur Syntaxe Description Mode
( ) (expression) Cet opérateur marque une priorité d'opération dans l'évaluation IDEAL et MASM
* expression1 * expression2 Cet opérateur permet d'effectuer la multiplication des expressions entières. Peut également être utilisé avec un mode d'adressage 80386 dans une expression avec un registre. IDEAL et MASM
+ (binaire) expression1 + expression2 Cet opérateur permet d'effectuer une addition de deux expressions IDEAL et MASM
+ (unaire) + expression Cet opérateur permet d'indiquer que l'expression est positive IDEAL et MASM
- (binaire) expression1 - expression2 Cet opérateur permet d'effectuer une soustraction de deux expressions IDEAL et MASM
- (unaire) - expression Cet opérateur permet d'indiquer que l'expression est négative IDEAL et MASM
. memptr.fieldname Cet opérateur permet de sélectionner un membre (champ) de la structure (enregistrement) IDEAL et MASM
/ expression1 / expression2 Cet opérateur permet d'effectuer une division entière de deux expressions. IDEAL et MASM
: segorgroup:expression Cet opérateur permet d'effectuer une génération de segment ou d'un groupe «override». IDEAL et MASM
? Dx ? Cet opérateur permet d'effectuer une initialisation avec une données indéterminé (où Dx peut être DB, DD, DF, DP ou DQ) IDEAL et MASM
[ ] expression1[expression2] Cet opérateur peut être utilisé pour spécifier une opérande d'ajout ou de registre indirecte en mémoire MASM
[ ] [expression1][expression2] Cet opérateur peut être utilisé pour spécifier une référence mémoire. IDEAL
AND expression1 AND expression2 Cet opérateur permet d'effectuer un «Et binaire». IDEAL et MASM
BYTE BYTE expression Cet opérateur permet de forcer l'adressage d'une expression avec un castre d'une taille d'un octet. IDEAL
BYTE PTR BYTE PTR expression Cet opérateur permet de forcer l'adressage d'une expression avec un castre d'une taille d'un octet. IDEAL et MASM
CODEPTR CODEPTR expression Cet opérateur permet de retourner la taille par défaut de l'adresse d'une procédure. IDEAL et MASM
DATAPTR DATAPTR expression Cet opérateur permet de forcer l'expression avec la taille d'un modèle dépendant. IDEAL et MASM
DUP compteur DUP (expression[,expression]...) Cet opérateur permet d'effectuer la répétition de données un nombre de fois spécifié par «compteur». IDEAL et MASM
DWORD DWORD expression Cet opérateur permet de forcer l'adressage d'une expression avec un castre d'une taille d'un double mot (4 octets). IDEAL
DWORD PTR DWORD PTR expression Cet opérateur permet de forcer l'adressage d'une expression avec un castre d'une taille d'un double mot (4 octets). IDEAL et MASM
EQ expression1 EQ expression2 Cet opérateur permet de retourner vrai si les deux expressions sont égales. IDEAL et MASM
FAR FAR expression Cet opérateur permet de forcer l'adressage d'une expression avec un code pointeur long. IDEAL
FAR PTR FAR PTR expression Cet opérateur permet de forcer l'adressage d'une expression avec un code pointeur long. IDEAL et MASM
FWORD FWORD expression Cet opérateur permet de forcer l'adressage d'une expression avec un code pointeur long de taille 32 bits. IDEAL
FWORD PTR FWORD PTR expression Cet opérateur permet de forcer l'adressage d'une expression avec un code pointeur long de taille 32 bits. IDEAL et MASM
GE expression1 GE expression2 Cet opérateur permet de retourner vrai si la première expression est supérieur ou égale à la deuxième expression. IDEAL et MASM
GT expression1 GT expression2 Cet opérateur permet de retourner vrai si la première expression est supérieur à la deuxième expression. IDEAL et MASM
HIGH HIGH expression Cet opérateur permet de retourner la partie haute d'une expression. Par exemple dans une expression 16 bits, il retournera les 8 bits de la partie haute de l'expression 16 bits. IDEAL et MASM
HIGH type HIGH expression Cet opérateur permet de retourner la partie haute (8 bits ou de la taille type) d'une expression. IDEAL
LARGE LARGE expression Cet opérateur permet de fixer la taille du déplacement 32 bits. Dans le mode «IDEAL», cette opération est autorisé seulement si la génération du code 386 est activé. IDEAL
LE expression1 LE expression2 Cet opérateur permet de retourner vrai si la première expression est inférieur ou égale à la deuxième expression. IDEAL et MASM
LOW LOW expression Cet opérateur permet de retourner la partie basse d'une expression. Par exemple dans une expression 16 bits, il retournera les 8 bits de la partie basse de l'expression 16 bits. IDEAL et MASM
LOW type LOW expression Cet opérateur permet de retourner la partie basse (8 bits ou de la taille type) d'une expression. IDEAL
LT expression1 LT expression2 Cet opérateur permet de retourner vrai si la première expression est inférieur à la deuxième expression. IDEAL et MASM
MASK MASK recordorfieldname Cet opérateur permet de retourner le bit de masque d'un champ d'enregistrement ou d'une entrée d'enregistrement. IDEAL et MASM
MOD expression1 MOD expression2 Cet opérateur permet de retourner le restant d'une division de deux expressions. IDEAL et MASM
NE expression1 NE expression2 Cet opérateur permet de retourner vrai si les deux expressions ne sont pas égales. IDEAL et MASM
NEAR NEAR expression Cet opérateur permet de forcer l'adressage d'une expression avec un code pointeur court. IDEAL
NEAR PTR NEAR PTR expression Cet opérateur permet de forcer l'adressage d'une expression avec un code pointeur court. IDEAL et MASM
NOT NOT expression Cet opérateur permet d'effectuer l'inversion de la valeur de chacun des bits d'un expression. IDEAL et MASM
OFFSET OFFSET expression Cet opérateur permet de retourner l'adressage de déplacement d'une expression avec le segment courant (ou le groupe de segment). IDEAL et MASM
OR expression1 OR expression2 Cet opérateur permet d'effectuer un «Ou binaire». IDEAL et MASM
PROC PROC expression Cet opérateur permet de forcer l'adressage d'une expression avec un code pointeur court ou long. IDEAL
PROC PTR PROC PTR expression Cet opérateur permet de forcer l'adressage d'une expression avec un code pointeur court ou long. IDEAL et MASM
PTR type PTR expression Cet opérateur permet de forcer l'adressage d'une expression de la taille du type spécifié. IDEAL et MASM
PWORD PWORD expression Cet opérateur permet de forcer l'adressage d'une expression avec un code pointeur long de taille 32 bits. IDEAL
PWORD PTR PWORD PTR expression Cet opérateur permet de forcer l'adressage d'une expression avec un code pointeur long de taille 32 bits. IDEAL et MASM
QWORD QWORD expression Cet opérateur permet de forcer l'adressage d'une expression avec un castre d'une taille d'un quadruple mot (8 octets). IDEAL
QWORD PTR QWORD PTR expression Cet opérateur permet de forcer l'adressage d'une expression avec un castre d'une taille d'un quadruple mot (8 octets). IDEAL et MASM
SEG SEG expression Cet opérateur permet de retourner le segment d'adressage d'une référence mémoire d'une expression. IDEAL et MASM
SHL expression SHL compteur Cet opérateur permet d'effectuer un décalage de bit vers la gauche. IDEAL et MASM
SHORT SHORT expression Cet opérateur permet de forcer l'adressage d'une expression d'un code pointeur très court (-128 à 127 de déplacement de l'emplacement courant). IDEAL et MASM
SHR expression SHR compteur Cet opérateur permet d'effectuer un décalage de bit vers la droite. IDEAL et MASM
SIZE SIZE nom Cet opérateur permet de retourner la taille d'un item de données alloué avec le nom spécifié. En mode MASM, SIZE retourne la valeur de LENGTH multiplier par TYPE. En mode IDEAL, SIZE retourne le compteur d'octets dans le «nom DUP». IDEAL et MASM
SMALL SMALL expression Cet opérateur permet de retourner la taille du déplacement en 16 bits. Dans le mode IDEAL, l'opération est légale seulement si la génération du code 386 est activé. IDEAL et MASM
SYMTYPE SYMTYPE expression Cet opérateur permet de retourner l'octet de décrivant l'expression. IDEAL
TBYTE TBYTE expression Cet opérateur permet de forcer l'adressage d'une expression de taille de 10 octets. IDEAL
TBYTE PTR TBYTE PTR expression Cet opérateur permet de forcer l'adressage d'une expression de taille de 10 octets. IDEAL et MASM
THIS THIS type Cet opérateur permet de créer une opérande avec l'adresse du segment courant et le compteur d'emplacement. IDEAL et MASM
.TYPE .TYPE expression Cet opérateur permet de retourner l'octet de mode descriptif et la porté de l'expression. MASM
TYPE TYPE nom1 nom2 Cet opérateur permet d'appliquer le type d'une variable existante ou d'un membre d'une structure dans l'autre variable ou membre d'une structure. IDEAL
TYPE TYPE nom1 nom2 Cet opérateur permet de retourner le nombre indiquant la taille ou le type d'une expression. MASM
UNKNOWN UNKNOWN expression Cet opérateur permet d'enlever le type d'information de l'expression d'adressage. IDEAL
WIDTH WIDTH recordorfieldname Cet opérateur permet de retourner le nombre de bits que contient un champ dans un enregistrement ou d'un enregistrement. IDEAL et MASM
WORD WORD expression Cet opérateur permet de forcer l'adressage d'une expression avec un castre d'une taille d'un mot. IDEAL
WORD PTR WORD PTR expression Cet opérateur permet de forcer l'adressage d'une expression avec un castre d'une taille d'un mot. IDEAL et MASM
XOR expression1 XOR expression2 Cet opérateur permet d'effectuer un «Ou exclusif binaire». IDEAL et MASM

Références

Turbo Assembler - Version 3.2: Quick Reference Guide, Edition Borland International, 1992, Part #11MN-BPL-10-70, BOR 4703, page 5 à 15.

Dernière mise à jour : Samedi, le 2 août 2014