Section courante

A propos

Section administrative du site

Les directives conditionnelles

Voir les directives conditionnels utilisés par les compilateurs tel Macro Assembler de Microsoft (MASM) ou Turbo Assembler de Borland (TASM):

Directive Syntaxe Description Mode
.186 .186 Cette directive permet d'activer l'assemblage des instructions du microprocesseur 80186. MASM
.286 .286 Cette directive permet d'activer l'assemblage des instructions du microprocesseur 80286 en mode réel sans privilège et les instructions du coprocesseur mathématique 80287. MASM
.286C .286C Cette directive permet d'activer l'assemblage des instructions du microprocesseur 80286 en mode réel sans privilège et les instructions du coprocesseur mathématique 80287. MASM
.286P .286P Cette directive permet d'activer l'assemblage des instructions du microprocesseur 80286 incluant le mode protégé et les instructions du coprocesseur mathématique 80287. MASM
.287 .287 Cette directive permet d'activer l'assemblage des instructions du coprocesseur mathématique 80287. MASM
.386 .386 Cette directive permet d'activer l'assemblage des instructions du microprocesseur 80386 en mode réel sans privilège et les instructions du coprocesseur mathématique 80387. MASM
.386C .386C Cette directive permet d'activer l'assemblage des instructions du microprocesseur 80386 en mode réel sans privilège et les instructions du coprocesseur mathématique 80387. MASM
.386P .386P Cette directive permet d'activer l'assemblage des instructions du microprocesseur 80386 incluant le mode protégé et les instructions du coprocesseur mathématique 80387. MASM
.387 .387 Cette directive permet d'activer l'assemblage des instructions du coprocesseur mathématique 80387. MASM
.486 .486 Cette directive permet d'activer l'assemblage des instructions du microprocesseur 80486 en mode réel sans privilège. MASM
.486C .486C Cette directive permet d'activer l'assemblage des instructions du microprocesseur 80486 en mode réel sans privilège. MASM
.486P .486P Cette directive permet d'activer l'assemblage des instructions du microprocesseur 80486 incluant le mode protégé. MASM
.487 .487 Cette directive permet d'activer l'assemblage des instructions du coprocesseur mathématique 80487. MASM
.8086 .8086 Cette directive permet d'activer l'assemblage des instructions du microprocesseur 8086 seulement. C'est le mode par défaut des modes d'instructions de Turbo Assembler. MASM
.8087 .8087 Cette directive permet d'activer l'assemblage des instructions du coprocesseur mathématique 8087 seulement. C'est le mode par défaut des modes d'instructions de Turbo Assembler. MASM
: :nom Cette directive permet d'appeler un étiquette du nom spécifié. MASM et IDEAL
= nom=expression Cette directive permet de définir ou redéfinir une équation numérique. MASM et IDEAL
ALIGN ALIGN limite Cette directive permet d'arrondir un compteur d'emplacement à la limite d'une puissance 2 d'adressage (2, 4, 8,...). MASM et IDEAL
.ALPHA .ALPHA Cette directive permet de fixer l'ordre de segment alphanumérique. La ligne de commande avec le paramètre «/a» effectue la même fonctionnalité. MASM
ARG ARG argument[,argument]...[symbol]
[RETURNS argument[,argument]]
Cette directive permet de fixer les arguments de la pile d'une procédure. Chaque argument est fixé à un déplacement positif dans le registre BP en supposant que l'adresse de retour d'une procédure d'appel et de l'appeleur avec BP est empilé la pile correctement. MASM et IDEAL
ASSUME ASSUME argument:nom[,segmentreg:nom]...
ASSUME segmentreg:NOTHING
ASSUME NOTHING
Cette directive permet de fixer les arguments de la pile d'une procédure. Chaque argument est fixé à un déplacement positif dans le registre BP en supposant que l'adresse de retour d'une procédure d'appel et de l'appeleur avec BP est empilé la pile correctement. MASM et IDEAL
%BIN %BIN taille Cette directive permet de fixer la taille de la colonne spécifié d'un champ d'objet de code dans la liste de fichier. MASM et IDEAL
CALL CALL instanceptrMETHOD{nomobjet:}
nommethode{USES{segreg}:offreg}
{appelparametreetendu}}
Cette directive permet d'appeler une procédure avec la méthode de procédure spécifié. MASM et IDEAL
CATSTR nom CATSTR chaine[,chaine] Cette directive permet d'effectuer une concaténation de chaine de caractères sous la forme d'une simple chaine de caractères du nom spécifié. MASM et IDEAL
.CODE .CODE Cette directive permet d'indiquer un segment de code MASM
.CODE .CODE nom Cette directive permet d'indiquer le début d'un segment de code quand il est utilisé avec la directive .MODEL. MASM et IDEAL
.CODESEG .CODESEG nom Cette directive permet d'indiquer le début d'un segment de code quand il est utilisé avec la directive .MODEL. MASM et IDEAL
COMM COMM definition[,definition] Cette directive permet de définir des variables communes. Chaque définition permet de décrire un symbole selon le format suivant:
   [distance][langage]nomsymbole[[compteur]]:type[:compteur2]
La distance est NEAR ou FAR et la taille par défaut est celle du modèle mémoire de données. Le langage peut être C, PASCAL, BASIC, FORTRAN, PROLOG ou NOLANGUAGE. Le nomsymbole permet d'indiquer le symbole communs. Le type peut-être BYTE, WORD, DATAPTR, CODEPTR, DWORD, FWORD, PWORD, PWORD, QWORD ou TBYTE ou une structure de nom.
MASM et IDEAL
COMMENT COMMENT delimiteur [texte]
[texte]
delimiteur [texte]
Cette directive permet d'indiquer un commentaire ou une remarque utilisant plusieurs lignes. Le délimiteur est le premier caractère n'étant pas un espace suivant COMMENT. MASM
%COND %COND Cette directive permet d'indiquer toutes les instructions d'un bloc conditionnel contenu dans une liste. C'est le mode par défaut du Turbo Assembler. MASM et IDEAL
.CONST .CONST Cette directive permet d'indiquer des constantes. MASM
CONST CONST Cette directive permet d'indiquer le début d'un segment de données de constantes. MASM et IDEAL
.CREF .CREF Cette directive permet d'indiquer des références croisés d'informations. MASM
%CREF %CREF Cette directive permet d'indiquer des références croisés d'informations à accumulé dans tous les symboles d'un point suivant de fichier source .CREF. L'effet s'inverse avec n'importe quel directive %XCREF ou .XCREF des informations de collection. MASM et IDEAL
%CREFALL %CREFALL Cette directive permet d'indiquer la cause des sous-séquences des symboles dans un fichier source d'une liste de référence-croisé. C'est le mode par défaut du Turbo Assembler. MASM et IDEAL
%CREFREF %CREFREF Cette directive permet de désactiver la liste des symboles sans référence dans une référence croisé. MASM et IDEAL
%CREFUREF %CREFUREF Cette directive permet de lister seulement les symboles sans référence dans une référence croisé. MASM et IDEAL
%CTLS %CTLS Cette directive permet de provoqué un contrôle de liste (comme avec %LIST, %INCL,...) pour placé dans la liste de fichier. MASM et IDEAL
.DATA .DATA Cette directive permet d'indiquer des données. MASM
DATASEG DATASEG Cette directive permet d'indiquer le début de l'initialisation du segment de données dans le module. La première fois que vous utilisez la directive .MODEL indique le modèle de mémoire. Le segment de données peut appeler dans le groupe DGROUP, lequel contraint également le segment définit avec les directives .STACK, .CONST et .DATA. IDEAL
.DATA? .DATA? Cette directive permet d'indiquer le début de l'initialisation du segment de données dans le module. La première fois que vous utilisez la directive .MODEL indique le modèle de mémoire. Le segment de données peut appeler dans le groupe DGROUP, lequel contraint également le segment définit avec les directives .STACK, .CONST et .DATA. IDEAL
DB [nom] DB expression[,expression]... Cette directive permet d'indiquer une allocation et entreposage de données sous forme d'octets à cette emplacement. L'opérateur DUP peut être utilisé dans expression pour indiquer des données répétitives. MASM et IDEAL
DD [nom] DD expression[,expression]... Cette directive permet d'indiquer une allocation et entreposage de données sous forme de double mot à cette emplacement. L'opérateur DUP peut être utilisé dans expression pour indiquer des données répétitives. MASM et IDEAL
%DEPTH %DEPTH largeur Cette directive permet de fixer la taille de la profondeur d'un champ dans une liste de fichier avec une colonne de largeur spécifié. MASM et IDEAL
DF [nom] DF [type PTR] expression[,expression]... Cette directive permet d'indiquer une allocation et entreposage de données sous forme de 6 octets (un pointeur long de 48 bits) à cette emplacement. Le type peut être BYTE, WORD, DATAPTR, CODEPTR, DWORD, FWORD, FWORD, PWORD, QWORD, TBYTE, SHORT, NEAR, NEAR, FAR ou un nom de structure. L'opérateur DUP peut être utilisé dans expression pour indiquer des données répétitives. MASM et IDEAL
DISPLAY DISPLAY "texte" Cette directive permet de faire sortir le texte spécifié immédiatement à l'écran. MASM et IDEAL
DOSSEG DOSSEG Cette directive permet d'activer l'ordre de segment DOS au temps de liaison. MASM et IDEAL
DP [nom] DP [type PTR] expression[,expression]... Cette directive permet d'indiquer une allocation et entreposage de données sous forme de 6 octets (un pointeur long de 48 bits) à cette emplacement. Le type peut être BYTE, WORD, DATAPTR, CODEPTR, DWORD, FWORD, FWORD, PWORD, QWORD, TBYTE, SHORT, NEAR, NEAR, FAR ou un nom de structure. L'opérateur DUP peut être utilisé dans expression pour indiquer des données répétitives. MASM et IDEAL
DQ [nom] DQ expression[,expression]... Cette directive permet d'indiquer une allocation et entreposage de données sous forme de quadruple mot à cette emplacement. L'opérateur DUP peut être utilisé dans expression pour indiquer des données répétitives. MASM et IDEAL
DT [nom] DT expression[,expression]... Cette directive permet d'indiquer une allocation et entreposage de données sous forme de 10 octets (80 bits) à cette emplacement. L'opérateur DUP peut être utilisé dans expression pour indiquer des données répétitives. MASM et IDEAL
DW [nom] DW expression[,expression]... Cette directive permet d'indiquer une allocation et entreposage de données sous forme d'un mot à cette emplacement. L'opérateur DUP peut être utilisé dans expression pour indiquer des données répétitives. MASM et IDEAL
ELSE IF condition
instruction1
[ELSE
instruction2]
ENDIF
Cette directive permet d'indiquer que si la condition est fausse les instructions instructions2 sont assemblés et seront inclus dans l'exécutable potentiel. MASM et IDEAL
ELSEIF IF condition1
instruction1
[ELSEIF condition2
instruction2]
ENDIF
Cette directive permet d'indiquer que si la condition condition1 est fausse et que la condition condition2 est vrai, les instructions instructions2 sont assemblés et seront inclus dans l'exécutable potentiel. D'autres formes sont également supportées: ELSEIF1, ELSEIF2, ELSEIFB, ELSEIFDEF, ELSEIFDIF, ELSEIFDEFI, ELSEIFDEFE, ELSEIFDN, ELSEIFIDNI, ELSEIFNB et ELSEIFNDEF. MASM et IDEAL
EMUL EMUL Cette directive permet d'indiquer que toutes les sous-séquences des instructions du coprocesseur mathématique génère une instructions d'émulations, comme si elles sont réellement existantes. MASM et IDEAL
END END [adressedebut] Cette directive permet d'indiquer la marque de la fin du fichier source. L'adressedebut permet d'indiquer l'expression ou le symbole spécifié l'adresse où commence l'exécution du programme. Le Turbo Assembler ignore n'importe quel texte suivant cette directive. MASM et IDEAL
ENDIF IF condition
instruction1

ENDIF
Cette directive permet d'indiquer la fin d'une condition SI ... ALORS d'une des directives conditions IFxxx. MASM et IDEAL
ENDM ENDM Cette directive permet d'indiquer la fin d'un bloc de répétition ou d'une définition de macro. MASM et IDEAL
ENDP ENDP [nomproc]
[nomproc] ENDP
Cette directive permet d'indiquer la fin d'une procédure. Si le nom de procédure nomproc est fournit, il correspond au nom de la procédure avec la directive PROC au début de la procédure. MASM et IDEAL
ENDS ENDS [nomsegment | nomstructure]
[nomsegment | nomstructure] ENDS
Cette directive permet d'indiquer la fin d'un segment, d'une structure ou d'une union. Si un nom optionnel est fournit, il doit correspondre une directive SEGMENT, STRUC ou UNION. MASM et IDEAL
ENUM ENUM nom[var_enum[,var_enum..]]
nom ENUM [var_enum[,var_enum..]]
Cette directive permet d'effectuer la déclaration d'une énumération de type de données. MASM et IDEAL
EQU nom EQU expression Cette directive permet d'effectuer la déclaration d'une chaine de caractères, d'un alias ou d'une équation numérique contenant le résultat de l'évaluation de l'expression. MASM et IDEAL
.ERR .ERR chaine Cette directive permet d'arrêter la compilation à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM
ERR ERR chaine Cette directive permet d'arrêter la compilation à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM et IDEAL
.ERR1 .ERR1 chaine Cette directive permet d'arrêter la compilation avec un message d'erreur de premier passage à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM
.ERR2 .ERR2 chaine Cette directive permet d'arrêter la compilation avec un message d'erreur de deuxième passage à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM
.ERRB .ERRB argument chaine Cette directive permet d'arrêter la compilation avec un message d'erreur avec un argument vide à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM
.ERRDEF .ERRDEF symbole chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si le symbole symbole est définit à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM
.ERRDIF .ERRDIF argument1,argument2 chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si les arguments sont différents à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM
.ERRDIFI .ERRDIFI argument1,argument2 chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si les arguments sont différents à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. La comparaison ne fait aucune distinction entre les majuscules et minuscules. MASM
.ERRE .ERRE expression chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si l'expression expression est fausse à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM
.ERRIDN .ERRIDN argument1,argument2 chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si les arguments argument1 et argument2 sont identiques à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM
.ERRIDNI .ERRIDNI argument1,argument2 chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si les arguments argument1 et argument2 sont identiques à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. La comparaison ne fait aucune distinction entre les majuscules et minuscules. MASM
.ERRIF .ERRIF expression chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si l'expression expression est vrai à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM et IDEAL
.ERRIF1 .ERRIF1 chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si s'est le premier passage de compilation à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM et IDEAL
.ERRIF2 .ERRIF2 chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si s'est le deuxième passage de compilation à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM et IDEAL
.ERRIFB .ERRIFB argument chaine Cette directive permet d'arrêter la compilation avec un message d'erreur avec un argument vide à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM et IDEAL
.ERRIFDEF .ERRIFDEF symbole chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si le symbole symbole est définit à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM et IDEAL
.ERRIFDIF .ERRIFDIF argument1,argument2 chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si les arguments sont différents à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM et IDEAL
.ERRIFDIFI .ERRIFDIFI argument1,argument2 chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si les arguments sont différents à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. La comparaison ne fait aucune distinction entre les majuscules et minuscules. MASM et IDEAL
.ERRIFE .ERRIFE expression chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si l'expression expression est fausse à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM et IDEAL
.ERRIFIDN .ERRIFIDN argument1,argument2 chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si les arguments argument1 et argument2 sont identiques à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM et IDEAL
.ERRIFIDNI .ERRIFIDNI argument1,argument2 chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si les arguments argument1 et argument2 sont identiques à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. La comparaison ne fait aucune distinction entre les majuscules et minuscules. MASM et IDEAL
.ERRIFNB .ERRIFNB argument chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si l'argument n'est pas vide à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM et IDEAL
.ERRIFNDEF .ERRIFNDEF symbole chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si le symbole symbole n'est pas définit à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM et IDEAL
.ERRNB .ERRNB argument chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si l'argument n'est pas vide à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM
.ERRNDEF .ERRNDEF symbole chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si le symbole symbole n'est pas définit à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM
.ERRNZ .ERRNZ expression chaine Cette directive permet d'arrêter la compilation avec un message d'erreur si l'expression expression ne vaut pas 0 à la ligne où est situé cette directive et d'afficher le message d'erreur optionnel spécifié par chaine. MASM
EVEN EVEN Cette directive permet d'arrondir au compteur d'emplacement de la prochaine même adresse. MASM et IDEAL
EVENDATA EVENDATA Cette directive permet d'arrondir au compteur d'emplacement de la prochaine même adresse dans le segment de données. MASM et IDEAL
.EXIT .EXIT [expressionvaleurretour] Cette directive permet de terminer la compilation immédiatement en envoyer un code de retour optionnel au système d'exploitation. Alias de la directive EXITCODE. MASM
EXITCODE EXITCODE [expressionvaleurretour] Cette directive permet de terminer la compilation immédiatement en envoyer un code de retour optionnel au système d'exploitation. Alias de la directive .EXIT. MASM et IDEAL
EXITM EXITM Cette directive permet de terminer la définition d'une macro ou d'un extension de bloc de répétition et retourne le contrôle à la prochaine instruction suivante la macro ou l'appel bloc de répétition. MASM et IDEAL
EXTRN EXTRN defintion[,definition]... Cette directive permet d'indiquer un symbole étant définit dans un autre module. La description de la définition definition d'un symbole doit avoir le format suivant:
[langage] nom[compteur1]:type[:compteur2]
Le langage langage peut avoir la convention de nommage suivantes: C, PASCAL, BASIC, FORTRAN, ASSEMBLER ou PROLOG. Le type type peut être les suivants: NEAR, FAR, PROC, BYTE, WORD, DWORD, DATAPTR, CODEPTR, FWORD, PWORD, PWORD, QWORD, TBYTE, ABS ou une structure de nom de fichiers.
MASM et IDEAL
.FARDATA .FARDATA [nomsegment] Cette directive permet de définir le début d'un long segment de données a initialiser. MASM
FARDATA FARDATA [nomsegment] Cette directive permet de définir le début d'un long segment de données a initialiser. MASM et IDEAL
.FARDATA? .FARDATA? [nomsegment] Cette directive permet de définir le début d'un long segment de données non initialisé. MASM
FASTIMUL FASTIMUL reg_dest,source_r/m,valeur Cette directive permet de générer du code multipliant le registre sources ou l'adresse mémoire par une valeur, et met le résultat dans le registre de destination. MASM et IDEAL
FLIPFLAG flagreg FLIPFLAG flagreg Cette directive est une forme d'optimisation du complément des bits XOR avec une instruction courte. MASM et IDEAL
GETFIELD GETFIELD nomchamp reg_destination, source_rm Cette directive est un générateur de code demander la valeur d'un champ trouvé dans la même source de registre ou mémoire, et fixe la destination avec cette valeur. MASM et IDEAL
GLOBAL GLOBAL defintion[,definition]... Cette directive permet d'indiquer des définitions de portée global, soit une combinaison de «EXTRN» et «PUBLIC». La description de la définition definition d'un symbole doit avoir le format suivant:
[langage] nom[compteur1]:type[:compteur2]
Le langage langage peut avoir la convention de nommage suivantes: C, PASCAL, BASIC, FORTRAN, ASSEMBLER ou PROLOG. Le type type peut être les suivants: NEAR, FAR, PROC, BYTE, WORD, DWORD, DATAPTR, CODEPTR, FWORD, PWORD, PWORD, QWORD, TBYTE, ABS ou une structure de nom de fichiers.
MASM et IDEAL
GOTO GOTO symbole_balise Cette directive permet de compléter n'importe quel bloc conditionnel pour indiquer un branchement. MASM et IDEAL
GROUP GROUP nomgroupe nomsegment[,nomsegment]...
nomgroupe GROUP nomsegment[,nomsegment]...
Cette directive permet d'associer un nom de groupe avec un plusieurs segment de code. MASM et IDEAL
IDEAL IDEAL Cette directive permet d'entrer l'assembleur en mode «IDEAL». MASM et IDEAL
IF IF expression
   instructionsivrai
[ELSE
   instructionsifaux]
ENDIF
Cette directive permet de définir un bloc conditionnel assemblant le code instructionsivrai si l'expression est vrai sinon il assemblera instructionsifaux si cette partie est définit. MASM et IDEAL
IF1 IF1
   instructionsivrai
[ELSE
   instructionsifaux]
ENDIF
Cette directive permet de définir un bloc conditionnel assemblant le code instructionsivrai s'il s'agit du premier passage de compilation sinon il assemblera instructionsifaux si cette partie est définit. MASM et IDEAL
IF2 IF2
   instructionsivrai
[ELSE
   instructionsifaux]
ENDIF
Cette directive permet de définir un bloc conditionnel assemblant le code instructionsivrai s'il s'agit du deuxième passage de compilation sinon il assemblera instructionsifaux si cette partie est définit. MASM et IDEAL
IFB IFB argument
   instructionsivrai
[ELSE
   instructionsifaux]
ENDIF
Cette directive permet de définir un bloc conditionnel assemblant le code instructionsivrai si l'argument est vide sinon il assemblera instructionsifaux si cette partie est définit. MASM et IDEAL
IFDEF IFDEF symbole
   instructionsivrai
[ELSE
   instructionsifaux]
ENDIF
Cette directive permet de définir un bloc conditionnel assemblant le code instructionsivrai si le symbole est définit sinon il assemblera instructionsifaux si cette partie est définit. MASM et IDEAL
IFDIF IFDIF argument1,argument2
   instructionsivrai
[ELSE
   instructionsifaux]
ENDIF
Cette directive permet de définir un bloc conditionnel assemblant le code instructionsivrai si les arguments argument1 et argument2 sont différents sinon il assemblera instructionsifaux si cette partie est définit. MASM et IDEAL
IFDIFI IFDIFI argument1,argument2
   instructionsivrai
[ELSE
   instructionsifaux]
ENDIF
Cette directive permet de définir un bloc conditionnel assemblant le code instructionsivrai si les arguments argument1 et argument2 sont différents sinon il assemblera instructionsifaux si cette partie est définit. La comparaison ne fait aucune distinction entre les majuscules et minuscules. MASM et IDEAL
IFE IFE expression
   instructionsivrai
[ELSE
   instructionsifaux]
ENDIF
Cette directive permet de définir un bloc conditionnel assemblant le code instructionsivrai si l'expression est fausse sinon il assemblera instructionsifaux si cette partie est définit. MASM et IDEAL
IFIDN IFIDN argument1,argument2
   instructionsivrai
[ELSE
   instructionsifaux]
ENDIF
Cette directive permet de définir un bloc conditionnel assemblant le code instructionsivrai si les arguments argument1 et argument2 sont identiques sinon il assemblera instructionsifaux si cette partie est définit. MASM et IDEAL
IFIDNI IFIDNI argument1,argument2
   instructionsivrai
[ELSE
   instructionsifaux]
ENDIF
Cette directive permet de définir un bloc conditionnel assemblant le code instructionsivrai si les arguments argument1 et argument2 sont identiques sinon il assemblera instructionsifaux si cette partie est définit. La comparaison ne fait aucune distinction entre les majuscules et minuscules. MASM et IDEAL
IFNB IFNB argument
   instructionsivrai
[ELSE
   instructionsifaux]
ENDIF
Cette directive permet de définir un bloc conditionnel assemblant le code instructionsivrai si l'argument n'est pas vide sinon il assemblera instructionsifaux si cette partie est définit. MASM et IDEAL
IFNDEF IFNDEF symbole
   instructionsivrai
[ELSE
   instructionsifaux]
ENDIF
Cette directive permet de définir un bloc conditionnel assemblant le code instructionsivrai si le symbole n'est pas définit sinon il assemblera instructionsifaux si cette partie est définit. MASM et IDEAL
%INCL %INCL Cette directive permet d'activer l'inclusion des fichiers. C'est le mode par défaut du mode de liste de la directive «INCLUDE» MASM et IDEAL
INCLUDE INCLUDE nomfichier Cette directive permet d'indiquer un fichier de code source à inclure à la position courante du module à assembler. S'il n'a pas d'extension, par défaut il utilise «.ASM». MASM et IDEAL
INCLUDELIB INCLUDELIB nomfichier Cette directive permet d'indiquer un fichier de bibliothèque à inclure dans le module à assembler. S'il n'a pas d'extension, par défaut il utilise «.LIB». MASM et IDEAL
INSTR position INSTR [debut,]chaine1,chaine2 Cette directive permet de demander la position de la seconde chaine dans la première et tenant compte que la recherche comme à la position spécifié par debut s'il est définit. MASM et IDEAL
IRP IRP parametre,arg1[,arg2]...
instructions
ENDM
Cette directive permet de définir une macro avec un bloc d'instruction répété par un chaine de caractères de substitution. MASM et IDEAL
IRPC IRPC parametre,chaine
instructions
ENDM
Cette directive permet de définir une macro avec un bloc d'instruction répété par un caractère de substitution. MASM et IDEAL
JMP JMP ptr_instance METHOD {nom_objet:}
nom_methode {USES{segreg:}offsreg}
Cette directive permet d'effectuer un saut à une procédure mais en empilant les paramètres dans la pile comme une instruction «CALL». Cette macro est destiné au développement de routine récursive. MASM et IDEAL
JUMPS JUMPS Cette directive permet d'ajuster les instructions de saut (JMP, JB, JE, JG,... ) automatiquement pour un saut court, proche ou long en fonction du contexte du code source. MASM et IDEAL
LABEL nom LABEL type
LABEL nom type
Cette directive permet de définir un symbole de type spécifié. Le paramètre nom permet d'indiquer le nom du symbole. Le paramètre type permet d'indiquer l'un des types suivantes : NEAR, FAR, PROC, BYTE, WORD, DATAPTR, WORD, DATAPTR, CODEPTR, DWORD, FWORD, PWORD, QWORD, TBYTE ou un nom de structure. MASM et IDEAL
.LALL .LALL Cette directive permet d'activer une liste dans une macro étendue. MASM
LARGESTACK LARGESTACK Cette directive permet d'indiquer que la taille de la pile est en 32 bits. MASM et IDEAL
.LFCOND .LFCOND Cette directive permet d'afficher toutes les instructions dans un bloc condtionnel d'une liste. MASM
%LINUM %LINUM taille Cette directive permet de fixer la largueur d'un champ de numérotation de ligne dans une liste d'un fichier avec des colonnes de taille indiquer par le paramètre taille. La valeur par défaut est de 4 colonnes. MASM et IDEAL
%LIST %LIST Cette directive permet d'afficher les lignes de sources d'une liste. C'est la valeur par défaut du mode de liste. MASM et IDEAL
.LIST .LIST Cette directive permet d'afficher les lignes de sources d'une liste. C'est la valeur par défaut du mode de liste. MASM
LOCAL LOCAL symbole[,symbole]...
LOCAL element[,element]=[=symbole]
Cette directive permet de définir les variables locales pour des macros ou procédures. Quand une macro à une définition, LOCAL définit temporairement les noms de symboles étant remplacer par un nouveau nom de symbole unique à chaque fois que la macro est étendue. LOCAL peut apparaitre avant n'importe quel autres instructions dans la définition d'une macro. Quand c'est une procédure, LOCAL définit le nom d'accès dans l'emplacement de la pile, lequel en un positionnement relatif négatif calculer à l'aide du registre BP. Si la fin de la liste de paramètres contient un signe d'égalité (=) et un symbole, le symbole doit être égale à la taille total d'un bloc de symboles local en octets. Chaque element a la syntaxe suivante : «nomsymbole [[compteur1]] [:taille_deboguage] [:type] [:compteur2]». Le paramètre type permet d'indiquer le type de données d'un paramètre, lequel peut-être BYTE, WORD, DATAPTR, CODEPTR, DWORD, FWORD, PWORD, QWORD, TBYTE, NEAR, FAR, PROC ou un nom de structure. Si le type n'est pas définit, la taille WORD est utilisé par défaut. Le paramètre compteur2 permet d'indiquer combien d'items de type de symboles sont définit. La valeur par défaut pour compteur2 est 1. Le paramètre compteur1 permet d'indiquer le nombre d'élément d'un tableau. L'espace total alloué par le symbole est est le nombre de fois compteur2 que la longueur spécifié est de type champ fois compteur1. Si le paramètre compteur1 n'est pas spécifié, sa valeur par défaut est 1. Le paramètre optionnel taille_deboguage à la syntaxe suivante : «[type] PTR». MASM et IDEAL
LOCALS LOCALS prefixe Cette directive permet d'activer un symbole local, les noms noms doivent débuter par deux arobas (@@) ou deux caractères de préfix spécifié par le paramètre prefixe si spécifié. Les symboles locales sont automatiquement activé en mode Ideal. MASM et IDEAL
MACRO MACRO nom parametre[,parametre]...
nom MACRO parametre[,parametre]...
Cette directive permet de définir une macro pouvant être étendue après que le paramètre nom est rencontré. Le paramètre parametre est placé dans le corps de la macro afin d'indiquer une substitution d'un des arguments actuels de la macro appelé. MASM et IDEAL
%MACS %MACS Cette directive permet d'activer une liste d'une macro étendue. MASM et IDEAL
MASKFLAG MASKFLAG destination,source Cette directive permet d'optimiser la forme d'un instruction ANDET BINAIRE») en affectant les bits avec l'instruction la plus courte possible. Utilisé seulement si le résultat contenu dans les registres de drapeaux n'est pas important. MASM et IDEAL
MASM MASM Cette directive permet d'entrer en mode d'assemblage MASM. C'est le mode d'assemblage par défaut du Turbo Assembler. MASM et IDEAL
MASM51 MASM51 Cette directive permet d'activer le mode étendue de l'assemblage du MASM version 5.1. MASM et IDEAL
MODEL MODEL [modifieurmodele] modelememoire
[nommodule][,[modifieurlangage]
langage][,modifieurmodele]
Cette directive permet de fixer le modèle de mémoire avec une segmentation simplifié. Le paramètre modifieurmodele permet d'indiquer le modèle de la pile : NEARSTACK ou FARSTACK. Le paramètre modelememoire permet d'indiquer un modèle de mémoire : TINY, SMALL, MEDIUM, COMPACT, LARGE, HUGE ou TCHUGE. Le paramètre nommodule est utilisé dans les modèles larges afin de déclarer le nom des segments de code. Le paramètre modifieurlangage permet d'indiquer la génération spécifique d'une entrée de procédure MSWindows et de code de sortie ou l'un des modificateurs de langage suivant : WINDOWS, ODDNEAR, ODDFAR ou NORMAL. Le paramètre langage permet d'indiquer comment le langage de programmation fait ses appels d'accès dans un module : C, PASCAL, BASIC, FORTRAN, PROLOG ou NOLANGUAGE. Le Turbo Assembler génère automatiquement l'entrée de procédure approprié et le code de sortie quand vous utilisez les directives PROC et ENDP. Les conventions de nommage qu'utilise le Turbo Assembler sont indiqués par le paramètre langage pour les symboles publiques ou externes et l'ordre des arguments de procédure empilé dans la pile lors de l'appel d'un module. Aussi, la forme approprié d'instruction RET est généré pour enlever les arguments de la pile avant de retourner au code l'appelant si nécessaire. MASM et IDEAL
.MODEL .MODEL [modifieurmodele] modelememoire
[nommodule][,[modifieurlangage]
langage][,modifieurmodele]
Cette directive permet de fixer le modèle de mémoire avec une segmentation simplifié. Le paramètre modifieurmodele permet d'indiquer le modèle de la pile : NEARSTACK ou FARSTACK. Le paramètre modelememoire permet d'indiquer un modèle de mémoire : TINY, SMALL, MEDIUM, COMPACT, LARGE, HUGE ou TCHUGE. Le paramètre nommodule est utilisé dans les modèles larges afin de déclarer le nom des segments de code. Le paramètre modifieurlangage permet d'indiquer la génération spécifique d'une entrée de procédure MSWindows et de code de sortie ou l'un des modificateurs de langage suivant : WINDOWS, ODDNEAR, ODDFAR ou NORMAL. Le paramètre langage permet d'indiquer comment le langage de programmation fait ses appels d'accès dans un module : C, PASCAL, BASIC, FORTRAN, PROLOG ou NOLANGUAGE. Le Turbo Assembler génère automatiquement l'entrée de procédure approprié et le code de sortie quand vous utilisez les directives PROC et ENDP. Les conventions de nommage qu'utilise le Turbo Assembler sont indiqués par le paramètre langage pour les symboles publiques ou externes et l'ordre des arguments de procédure empilé dans la pile lors de l'appel d'un module. Aussi, la forme approprié d'instruction RET est généré pour enlever les arguments de la pile avant de retourner au code l'appelant si nécessaire. MASM
.MODEL TPASCAL .MODEL TPASCAL Ce paramètre de directive permet la configurant du modèle de mémoire simplifié pour écrire des procédures appelable du TURBO PASCAL. IDEAL
MULTERRS MULTERRS Cette directive permet d'allouer de multiples erreurs a être rapporté dans une simple ligne de source. MASM et IDEAL
NAME NAME nommodule Cette directive permet de fixer le nom d'un module de fichier d'objet. Cette directive n'a aucun effet en mode MASM; il fonctionne seulement en mode Ideal. MASM et IDEAL
%NEWPAGE %NEWPAGE Cette directive permet d'indiquer une nouvelle page dans une liste de fichier. MASM et IDEAL
%NOCONDS %NOCONDS Cette directive permet de désactiver le positionnement des instructions dans un bloc conditionnel d'une liste de fichiers. MASM et IDEAL
%NOCREF %NOCREF [symbole,...] Cette directive permet de désactiver l'accumulation d'information de référence croisé d'une liste (CREF). Si vous fournissez un ou plusieurs symboles de noms, la référence croisé est seulement désactivé pour ces symboles. MASM et IDEAL
%NOCTLS %NOCTLS Cette directive permet de désactiver le positionnement d'une directive de contrôle de liste dans une liste de fichier. C'est le mode par défaut du contrôle de liste du Turbo Assembler. MASM et IDEAL
NOEMUL NOEMUL Cette directive permet de provoquer la génération des instructions réels de tous les sous-séquences d'instructions du coprocesseur mathématique plutôt que d'émuler les instructions. Quand votre programme est exécuté, vous devez disposer d'un coprocesseur mathématique 80x87 d'installé ou ces instructions ne s'exécuteront pas proprement. C'est la valeur par défaut mode d'assemblage des nombres réels (virgules flottante) du Turbo Assembler. MASM et IDEAL
%NOINCL %NOINCL Cette directive permet de désactiver la liste des lignes sources des fichiers INCLUDE. MASM et IDEAL
NOJUMPS NOJUMPS Cette directive permet de désactiver les arrangements de sauts conditionnels trop long activés par la directive JUMPS. C'est le mode par défaut du Turbo Assembler. MASM et IDEAL
%NOLIST %NOLIST Cette directive permet de désactiver la sortie de la liste de fichier. MASM et IDEAL
NOLOCALS NOLOCALS Cette directive permet de désactiver les symboles locales activé par la directive LOCALS. C'est la valeur par défaut du Turbo Assembler en mode MASM. MASM et IDEAL
%NOMACS %NOMACS Cette directive permet de afficher seulement la liste des macros étendu que le code génère. C'est le mode de macro de liste par défaut du Turbo Assembler. MASM et IDEAL
NOMASM51 NOMASM51 Cette directive permet de désactiver le mode étendue de l'assemblage du MASM version 5.1 de la directive MASM51. C'est le mode par défaut du Turbo Assemhler. MASM et IDEAL
NOMULTERRS NOMULTERRS Cette directive permet d'allouer seulement les simples erreurs a être rapporté dans une ligne de source. C'est le mode par défaut du reportage d'erreur du Turbo Assembler. MASM et IDEAL
NOSMART NOSMART Cette directive permet de désactiver l'optimisation du code que génère les différents code du MASM. MASM et IDEAL
%NOSYMS %NOSYMS Cette directive permet de désactiver le positionnement d'une table symbole dans une liste de fichier. MASM et IDEAL
%NOTRUNC %NOTRUNC Cette directive permet d'avertir lorsque des tronquages de champs dont le contenu est trop long pour la longueur du champ correspondant d'une liste de fichiers se produit. MASM et IDEAL
NOWARN NOWARN [classeattention] Cette directive permet de désactiver les messages d'avertissements avec les identificateurs d'avertissement classeattention ou toutes les messages d'avertissement si le paramètre classeattention n'est pas spécifié. MASM et IDEAL
ORG ORG expression Cette directive permet de fixer l'emplacement de départ ou le segment courant commence son adressage de code. MASM et IDEAL
%OUT %OUT texte Cette directive permet d'afficher le texte spécifier à l'écran. MASM
P186 P186 Cette directive permet d'activer l'assemblage des instructions du microprocesseur 80186. MASM et IDEAL
P286 P286 Cette directive permet d'activer l'assemblage des instructions du microprocesseur 80286 en mode protégé et les instructions du coprocesseur mathématique 80287. MASM et IDEAL
P286N P286N Cette directive permet d'activer l'assemblage des instructions du microprocesseur 80286 en mode réel sans prévilège et les instructions du coprocesseur mathématique 80287. MASM et IDEAL
P286P P286P Cette directive permet d'activer l'assemblage des instructions du microprocesseur 80286 en mode protégé et les instructions du coprocesseur mathématique 80287. MASM et IDEAL
P287 P287 Cette directive permet d'activer l'assemblage des instructions du coprocesseur mathématique 80287. MASM et IDEAL
P386 P386 Cette directive permet d'activer l'assemblage des instructions de tous le microprocesseur 80386 (incluant le mode protégé) et les instructions du coprocesseur mathématique 80387. MASM et IDEAL
P386N P386N Cette directive permet d'activer l'assemblage des instructions du microprocesseur 80386 en mode réel sans privilège et les instructions du coprocesseur mathématique 80387. MASM et IDEAL
P386P P386P Cette directive permet d'activer l'assemblage des instructions de tous le microprocesseur 80386 (incluant le mode protégé) et les instructions du coprocesseur mathématique 80387. MASM et IDEAL
P387 P387 Cette directive permet d'activer l'assemblage des instructions du coprocesseur mathématique 80387. MASM et IDEAL
P486 P486 Cette directive permet d'activer l'assemblage des instructions de tous le microprocesseur 80486 (incluant le mode protégé). MASM et IDEAL
P486N P486N Cette directive permet d'activer l'assemblage des instructions du microprocesseur 80486 en mode réel sans privilège. MASM et IDEAL
P487 P487 Cette directive permet d'activer l'assemblage des instructions du coprocesseur mathématique 80487. MASM et IDEAL
P8086 P8086 Cette directive permet d'activer l'assemblage des instructions du microprocesseur 8086 seulement. Cette directive est activé par défaut sur le Turbo Assembler. MASM et IDEAL
P8087 P8087 Cette directive permet d'activer l'assemblage des instructions du coprocesseur mathématique 8087 seulement. Cette directive est le mode de coprocesseur par défaut sur le Turbo Assembler. MASM et IDEAL
%PAGESIZE PAGE [lignes] [,cols] %PAGESIZE [lignes] [,cols] Cette directive permet de fixer la largeur et la hauteur de page de la liste et du début des nouvelles pages. Le paramètre lignes permet d'indiquer le nombre de lignes apparaissant dans chacune des pages de liste (10 à 255). Le paramètre cols permet d'indiquer le nombre de colonnes qu'une page doit avoir (59 à 255). Quand le paramètre lignes ou cols est omis, la taille des ajustements courant reste inchangé. Si le paramètre PAGE est suivi d'un symbole plus (+), une nouvelle page commence, le numéro de la section est incrémenté, et le numéro de la page redémarre à 1. Lorsque le PAGE n'a pas de paramètre, la liste est forcé de résumé une nouvelle page, sans changé le numéro de section. MASM et IDEAL
%PCNT %PCNT largeur Cette directive permet de fixer la largeur du champ segment:offset d'une colonne largeur d'une liste d'un fichier. La valeur par défaut est 4 pour un segment de 16 bits et 8 pour un segment de 32 bits. MASM et IDEAL
PNO87 PNO87 Cette directive permet de prévenir de l'assemblage d'instruction du coprocesseur mathématique (réel ou en émulation). MASM et IDEAL
%POPLCTL %POPLCTL Cette directive permet de réinitialiser le contrôle de liste dans le chemin précédent la directive %PUSHLCTL. MASM et IDEAL
POPSTATE POPSTATE Cette directive permet de retourner le dernier état de la pile interne du Turbo Assembler. MASM et IDEAL
PROC PROC [modificateurdelangage] [langage] nom [distance]
   [USES items,] [arguments [,arguments]...]
   [RETURNS argument [,argument]]
...
ENDP nom
Cette directive permet de définir une procédure (sous-programme). MASM et IDEAL
PROCDESC PROCDESC nom [langage] [modificateurdelangage] [distance] [arguments]
nom PROCDESC [langage] [modificateurdelangage] [distance] [arguments]
Cette directive permet de déclarer une prototype de procédure, lequel Turbo Assembler vérifie les types et le nombre de paramètres de la procédure appelante, les déclarations, le langage spécifié et la distance. Peut également utilisé PUBLIC et EXTRN avec les noms de procédures. MASM et IDEAL
PROCTYPE PROCTYPE nom [descriptionprocedure]
nom PROCTYPE [descriptionprocedure]
Cette directive permet d'effectuer la déclaration d'un type de procédure. Le paramètre descriptionprocedure à la définition suivante «[modifierlangage] [langage] [distance] [argument[,argument]...]». Le paramètre argument a la définition suivante «[nomarg][[compteurexpression1]]:typecomplexe[:compteurexpression2]». La description d'une procédure ne crée pas le prototype de celui-ci. Peut-être utilisé à la place du spécifieur de langage de l'appelant, le type d'argument a vérifier durant la compilation. MASM et IDEAL
PUBLIC PUBLIC [langage] symbole[,langage] symbole].... Cette directive permet de rendre publique un/des symbole(s) pour des liaisons externe. MASM et IDEAL
PUBLICDLL PUBLICDLL [langage]symbole[,langage]symbole]... Cette directive permet d'effectuer la déclaration de symbole accessible dans un point d'entrée de lien dynamique des autres modules. Le paramètre symbole (d'une directive PROC, d'une étiquette de programme, d'une données de nom de variable ou d'une constante numérique définit avec la directive EQU) rendre les autres programmes accessibles en dehors d'OS/2. Si le paramètre langage (C, PASCAL, BASIC, FORTRAN, PROLOG ou NOLANGUAGE) est spécifié, le paramètre symbole est de porté publique après que la convention de nommage est appliqué au langage spécifié. MASM et IDEAL
PURGE PURGE nommacro[,nommacro] Cette directive permet de supprimer la définition de macro spécifié. MASM et IDEAL
%PUSHLCTL %PUSHLCTL Cette directive permet de sauvegarder l'état courant de la liste contrôle dans une pile à 16 niveaux. MASM et IDEAL
PUSHSTATE PUSHSTATE Cette directive permet de sauvegarder l'état d'opération dans une pile interne à 16 niveaux. MASM et IDEAL
QUIRKS QUIRKS Cette directive permet d'effectuer l'assemblage de fichier source faisant usage de l'un des vrai bogues du MASM. MASM et IDEAL
.RADIX .RADIX basenumerique Cette directive permet de fixer la base numérique d'une constante entière d'une expression à 2 (binaire), 8 (octal), 10 (décimal) ou 16 (hexadécimal). MASM
RADIX RADIX basenumerique Cette directive permet de fixer la base numérique d'une constante entière d'une expression à 2 (binaire), 8 (octal), 10 (décimal) ou 16 (hexadécimal). MASM et IDEAL
RECORD nom RECORD champ[,champ]...
RECORD nom champ[,champ]...
Cette directive permet de définir une structure de données du nom du paramètre nom avec des champs de bit. Chaque champ contient une description d'un groupe de bits dans enregistrement et on le format suivant : «nomchamp:largeur[=expression]». Le paramètre nomchamp permet d'indiquer le nom du champ dans un enregistrement. Le paramètre largeur (valeur de 1 à 16) permet d'indiquer le nombre de bits d'un champ. Si le nombre total de bits dans tous les champs est 8 ou moins, l'enregistrement n'occupera qu'un octet; si le nombre de bits est entre 9 et 16 bits, il occupera 2 octets; autrement il occupera 4 octets. Le paramètre expression permet de fournir une valeur par défaut pour le champ. MASM et IDEAL
REPT REPT expression
   instructions
ENDM
Cette directive permet d'effectuer une répétition d'un bloc d'instructions le nombre de fois spécifié par le paramètre expression. MASM et IDEAL
RETCODE RETCODE Cette directive permet d'effectuer la génération d'un retour court (2 octets de déplacement) ou d'un retour long (4 octets de déplacement) dépendamment de la taille du modèle de mémoire déclaré dans la directive .MODEL. Si le modèle de mémoire est TINY, SMALL ou COMPACT, le résultat est un retour court (NEAR), si le modèle est MEDIUM, LARGE ou HUGE, le résultat est long (FAR). MASM et IDEAL
RETF RETF Cette directive permet d'effectuer la génération d'un retour long (4 octets de déplacement) (FAR). MASM et IDEAL
RETN RETN Cette directive permet d'effectuer la génération d'un retour court (2 octets de déplacement) (NEAR). MASM et IDEAL
.SALL .SALL Cette directive permet de supprimer la liste de tous les instructions dans une macro étendue. MASM
SEGMENT SEGMENT nom alignement [combine] [utilise] ['classe']
nom SEGMENT alignement [combine] [utilise] ['classe']
Cette directive permet de définir un segment de nom du paramètre nom avec plein d'attribut secondaire. Si vous avez déjà un segment avec le même nom, ce segment est traité en continuité avec le précédent. Le paramètre alignement permet de spécifié le type de limite de mémoire où le segment doit commencé : BYTE, WORD, DWORD, PARA (par défaut) ou PAGE. Le paramètre combine permet de spécifié comment les segments de différents modules, mais avec les mêmes noms, sont combiné à chaque liaison : AT expression (emplacement de segment dans un paragraphe absolue d'une adresse d'expression), COMMON (emplacement de ce segment et des autres segments avec le même nom à la même adresse), MEMORY (concaténation de tous les segments avec le même nom de forme de continuité de segment simple) PRIVATE (ne combine pas ce segment avec n'importe quel autres segments; c'est la valeur par défaut si pas spécifié), PUBLIC (même que MEMORY), STACK (concaténation de tous les segments avec le même nom qu'un continuité de segment simple, alors initialisé avec le registre SS au début du segment et le registre SP pour la longueur du segment) ou VIRTUAL (définie un genre spécial de segment pouvant être traité dans une région commune et attaché à un autre segment à chaque liaison). Le paramètre utilise permet de spécifié le taille du mode par défaut pour un segment, si l'activation du code généré est pour un microprocesseur 80386, et peut être USE16 ou USE32. Le paramètre classe permet d'indiquer l'ordre de contrôle d'un segment de liaison, segments avec la même classe chargé dans le même ensemble de mémoire, quel que soit l'ordre dans lequel apparait le fichier source. MASM et IDEAL
.SEQ .SEQ Cette directive permet de fixer l'ordre de séquence d'un segment. C'est le mode d'ordre par défaut pour Turbo Assembler. Cette directive produit le même résultat que le paramètre en ligne de commande «/s». MASM
SETFIELD SETFIELD nomchamp destinationrm sourcereg Cette directive permet d'effectuer la génération d'un ensemble de valeur dans un champ d'enregistrement. L'ensemble de champ dans l'adresse de registre ou de mémoire à le même contenu qu'une source de registre. MASM et IDEAL
SETFLAG SETFLAG destination,source Cette directive permet d'optimiser la forme d'une instruction OROU BINAIRE») en affectant les bits avec l'instruction la plus courte possible. Utilisé seulement si le résultat contenu dans les registres de drapeaux n'est pas important. MASM et IDEAL
.SFCONF .SFCONF Cette directive permet d'envoyer un avertissement lorsque des instructions avec des conditions de bloc de valeur fausse apparaisse dans la liste du fichier. MASM
SIZESTR nom SIZESTR nombrecaracteres Cette directive permet de fixer le nombre de caractères indiquer par le paramètre nombrecaracteres que doit avoir une chaine de caractères du nom indiquer par le paramètre nom. MASM et IDEAL
SMALLSTACK SMALLSTACK Cette directive permet d'indiquer que la taille de la pile est en 16 bits. MASM et IDEAL
NOSMART NOSMART Cette directive permet d'activer l'optimisation du code que génère les différents code du MASM. MASM et IDEAL
.STACK .STACK [taille] Cette directive permet de définir le début du segment de pile et d'allouer le nombre d'octets indiquer par le paramètre taille. Les 1024 octets sont alloué si le paramètre taille n'est pas spécifié. MASM
STACK STACK [taille] Cette directive permet de définir le début du segment de pile et d'allouer le nombre d'octets indiquer par le paramètre taille. Les 1024 octets sont alloué si le paramètre taille n'est pas spécifié. MASM et IDEAL
.STARTUP .STARTUP Cette directive permet de provoquer l'initialisation du code et marque le début du programme. Équivalent de la directive «STARTUPCODE». MASM
STARTUPCODE STARTUPCODE Cette directive permet de provoquer l'initialisation du code et marque le début du programme. Équivalent de la directive «.STARTUP». MASM et IDEAL
STRUC [nom] STRUC [modifieurs] [nomparent] [METHOD listemethode]
   structuredonnees
ENDS nom
STRUC [nom] [modifieurs] [nomparent] [METHOD listemethode]
   structuredonnees
ENDS nom
Cette directive permet de définir une structure de données. Le paramètre nomparent permet d'indiquer le nom du bloc parent d'un objet de structure de données. Le paramètre listemethode est comme la directive TABLE. Le paramètre structuredonnees correspond à n'importe quel données contenu dans l'objet. Le modifieurs peut être GLOBAL, NEAR ou FAR. MASM et IDEAL
SUBSTR nom SUBSTR chaine,position[,taille] Cette directive permet de définir une nouvelle chaine de caractères constitué des caractères du paramètre chaine et débutant à la position du paramètre position et avec la longueur du paramètre taille. Tous les caractères du paramètre chaine, débutant à la position spécifié par le paramètre position, sont associés au paramètre nom si le paramètre taille n'est pas spécifié. MASM51 et IDEAL
SUBTTL SUBTTL texte Cette directive permet de fixer les sous-titres d'une liste de fichier indiquer par le paramètre texte. MASM
%SUBTTL %SUBTTL texte Cette directive permet de fixer les sous-titres d'une liste de fichier indiquer par le paramètre texte. MASM et IDEAL
%SYMS %SYMS Cette directive permet d'activer le table de symbole situé dans la liste de fichier. C'est le symbole par défaut du mode de liste du Turbo Assembler. MASM et IDEAL
TABLE TABLE nom [table_membre[,table_membre...]] Cette directive permet de construire une table de structure utilisable pour contenir les pointeurs de méthodes pour des objets. MASM et IDEAL
%TABSIZE %TABSIZE largeur Cette directive permet de fixer le nombre de colonnes entres les tabulations dans liste de fichier de largeur indiqué par le paramètre largeur. La valeur de la colonne par défaut est 8. MASM et IDEAL
TBLINIT TBLINIT Cette directive permet d'initialiser un pointeur d'objet dans une table de méthode virtuel. MASM et IDEAL
TBLPTR TBLPTR Cette directive permet de placer un pointeur de table virtuel dans l'objet de données. La définition d'un membre de structure d'un nom est indiqué par «@Mptr_objet». Cette directive peut seulement être utilisé à l'intérieur de la définition d'objet. MASM et IDEAL
TESTFLAG TESTFLAG destination,source Cette directive permet d'optimiser la forme d'une instruction TESTET BINAIRE» sans affectation des opérandes) en affectant les drapeaux avec l'instruction la plus courte possible. MASM et IDEAL
%TEXT %TEXT largeur Cette directive permet de fixer le champ source d'une liste de fichier avec la largeur de colonne indiqué par le paramètre largeur. MASM et IDEAL
.TFCOND .TFCOND Cette directive permet de faire bascule le mode de conditionnel de liste de bloc. MASM
TITLE TITLE texte Cette directive permet de fixer le titre d'une liste de fichier avec le paramètre texte. MASM
%TITLE %TITLE texte Cette directive permet de fixer le titre d'une liste de fichier avec le paramètre texte. MASM et IDEAL
%TRUNC %TRUNC Cette directive permet d'effectuer le tronquage des champs d'une liste étant trop long. MASM et IDEAL
TYPEDEF TYPEDEF nom_type type_complexe
nom_type TYPEDEF type_complexe
Cette directive permet d'effectuer la définition de types nommés. MASM et IDEAL
UDATASEG UDATASEG Cette directive permet de définir le début d'un segment de données non-initialisé. MASM et IDEAL
UFARDATA UFARDATA Cette directive permet de définir le début d'un long segment de données non-initialisé. MASM et IDEAL
UNION UNION nom
   champs
ENDS [nom]
nom UNION
   champs
ENDS [nom]
Cette directive permet de définir union avec le nom indiqué par le paramètre nom. Une union est comme la directive STRUC sauf que tous le mêmes déplacement, soit un offset à 0 au début de l'union. Le résultat de cette ensemble de champ est un recouvrement, allouant la référent à la région de mémoire définit par une union avec différent noms et différentes tailles de données. La longueur d'une union est la longueur du plus large de c'est membres et non pas la somme de tous la longueur de tous ses membres comme la directive STRUCT. Le paramètre champs permet de définir les champs compris dans l'union. Chaque champ utilise l'allocation de directive de données normal (DB, DW et les autres) pour définir leur taille. MASM et IDEAL
USES USES item[,item]... Cette directive permet d'indiquer quel registre ou simple jeton d'item de données sont empilés en premier dans la procédure quand la procédure les dépiles durant le retour de la procédure. Vous pouvez utilisé cette directive avant le début des instructions qu'il génère en code dans votre procédure. MASM et IDEAL
VERSION VERSION version_ID Cette directive permet de placer le Turbo Assembler dans le mode d'opération d'équivalence de la version spécifié par le paramètre version_ID. MASM et IDEAL
WARN WARN classeattention Cette directive permet d'activer le type de message d'avertissement spécifié avec le paramètre classeattention, ou tous les avertissements si le paramètre n'est pas spécifié. Le paramètre classeattention peut avoir une des valeurs suivantes : ALN, ASS, BRK, ICG, LCO, OPI, OPP, OPS, OVF, PDC, PRO, PQK, RES ou TPI. MASM et IDEAL
WHILE WHILE tantqueexpression
   corpsmacro
ENDM
Cette directive permet d'effectuer une répétition du corps de la macro, indiqué par le paramètre corpsmacro, jusqu'à ce que la valeur du paramètre tantqueexpression égale 0 (ou faux). MASM et IDEAL
.XALL .XALL Cette directive permet d'indiquer que seul les macros étendue génère du code ou des données dans la liste. MASM
.XCREF .XCREF Cette directive permet de désactiver l'accumulation d'information des références croisés (CREF) de liste. MASM
.XLIST .XLIST Cette directive permet de désactiver les sous-séquences de sortie d'une liste de fichier. MASM

Références

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

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