.TFCOND.TFCOND.tfcond,Toggles listing of false conditional blocks..FARDATA.FARDATA.fardatafWhen used with .MODEL, starts a far data segment for initialized data (segment name FAR_DATA or name)..EXIT.EXIT.exitGenerates termination code..ELSE.ELSE.elseUGenerates code to jump to the top of a .WHILE or .REPEAT block if condition is false.SUBTITLESUBTITLEsubtitle-Defines the listing subtitle. Same as SUBTTL..486P.486P.486pTEnables assembly of all instructions (including privileged) for the 80486 processor.DDDDddyPseudo-Instruction declaring initialized data. Double Word, Single Precision (4 bytes, 32 bit). DD is a synonym of DWORD. .LISTMACROALL .LISTMACROALL .listmacroall+Starts listing of all statements in macros..LISTALL.LISTALL.listall!Starts listing of all statements.EXITMEXITMexitmvTerminates expansion of the current repeat or macro block and begins assembly of the next statement outside the block..PUSHREG.PUSHREG.pushregMASM64: Generates a UWOP_PUSH_NONVOL unwind code entry for the specified register number using the current offset in the prologue.GOTOGOTOgoto2Transfers assembly to the line marked :macrolabel..LFCOND.LFCOND.lfcondJStarts listing of statements in false conditional blocks. Same as .LISTIF.ALIGNALIGNalignOAligns the next variable or instruction on a byte that is a multiple of number.RESTRESTrest|Pseudo-Instruction declaring uninitialized data. Extended (Double) Precision (10 bytes, 80 bit). REST is a synonym of TBYTE.ENDENDendSMarks the end of a module and, optionally, sets the program entry point to address.RESORESOreso~Pseudo-Instruction declaring uninitialized data. IEEE 754-2008 Quad Precision (16 bytes, 128 bit), RESO is a synonym of OWORD.SBYTESBYTEsbyteLPseudo-Instruction declaring uninitialized data. Signed Byte (1 byte, 8 bit).MMX.MMX.mmxQEnables assembly of MMX or single-instruction, multiple data (SIMD) instructions.EXTRNEXTRNextrnZDefines one or more external variables, labels, or symbols called name whose type is type.ENDSENDSendsMarks the end of segment, structure, or union name previously begun with SEGMENT, STRUCT, UNION, or a simplified segment directive..ELSEIF.ELSEIF.elseifqGenerates code that tests condition1 (for example, AX > 7) and executes the statements if that condition is true.EXTERNEXTERNexternZDefines one or more external variables, labels, or symbols called name whose type is type.SIZESTRSIZESTRsizestrFinds the size of a text item.FORCFORCforcMarks a block that will be repeated once for each character in string, with the current character replacing parameter on each repetition. EXTERNDEF EXTERNDEF externdefZDefines one or more external variables, labels, or symbols called name whose type is type.DWDWdwoPseudo-Instruction declaring initialized data. Word, Half Precision (2 bytes, 16 bit). DW is a synonym of WORD..ENDIF.ENDIF.endif32-bit MASM only.DODOdozPseudo-Instruction declaring initialized data. IEEE 754-2008 Quad Precision (16 bytes, 128 bit), DO is a synonym of OWORD..SFCOND.SFCOND.sfcondPSuppresses listing of conditional blocks whose condition evaluates to false (0)..XLIST.XLIST.xlist+Suppresses program listing. Same as .NOLISTGROUPGROUPgroup4Add the specified segments to the group called name.BYTEBYTEbyteEPseudo-Instruction declaring uninitialized data. Byte (1 byte, 8 bit)TBYTETBYTEtbyteAllocates and optionally initializes 10 bytes of storage for each initializer. Can also be used as a type specifier anywhere a type is legal..ERRNZ.ERRNZ.errnz3Generates an error if expression is true (nonzero).RESYRESYresyaPseudo-Instruction declaring uninitialized data. (32 bytes, 256 bit). RESY is a synonym of YWORD..ENDW.ENDW.endw32-bit MASM only. .LISTMACRO .LISTMACRO .listmacroHStarts listing of macro expansion statements that generate code or data.IFIFifGrants assembly of ifstatements if expression1 is true (nonzero) or elseifstatements if expression1 is false (0) and expression2 is true..ERRNB.ERRNB.errnb,Generates an error if textitem is not blank. INCLUDELIB INCLUDELIB includelibMInforms the linker that the current module should be linked with libraryname..RADIX.RADIX.radixISets the default radix, in the range 2 to 16, to the value of expression.INVOKEINVOKEinvokeCalls the procedure at the address given by expression, passing the arguments on the stack or in registers according to the standard calling conventions of the language type.PROCPROCprocMarks start and end of a procedure block called label. The statements in the block can be called with the CALL instruction or INVOKE directive. .ENDPROLOG .ENDPROLOG .endprolog5MASM64: Signals the end of the prologue declarations.IFBIFBifb%Grants assembly if textitem is blank.ADDRADDRaddrWOperator used exclusively with INVOKE to pass the address of a variable to a procedure.HWNDHWNDhwndA handle to a window.FPO.FPO.fpo]The .FPO directive controls the emission of debug records to the .debug$F segment or section.PROTOPROTOprotoPrototypes a function.IF2IF2if2FIF block is evaluated on every assembly pass if OPTION:SETIF2 is TRUE..386P.386P.386pEnables assembly of all instructions (including privileged) for the 80386 processor; disables assembly of instructions introduced with later processors.SDWORDSDWORDsdwordgPseudo-Instruction declaring uninitialized data. Signed Double Word, Single Precision (4 bytes, 32 bit).LIST.LIST.listStarts listing of statements..ERR2.ERR2.err2E.ERR block evaluated on every assembly pass if OPTION:SETIF2 is TRUE..DOSSEG.DOSSEG.dossegOrders the segments according to the MS-DOS segment convention: CODE first, then segments not in DGROUP, and then segments in DGROUP..DATA.DATA.data\When used with .MODEL, starts a near data segment for initialized data (segment name _DATA)..IF.IF.ifGenerates code that tests condition1 (for example, AX > 7) and executes the statements if that condition is true. (32 bit MASM only)TIMESTIMEStimesGThe TIMES prefix causes the instruction to be assembled multiple times..ERRIDN.ERRIDN.erridn3Generates an error if the text items are identical.IFEIFEife+Grants assembly if expression is false (0).QWORDQWORDqword^Pseudo-Instruction declaring uninitialized data. Quad word, Double Precision (8 bytes, 64 bit) .PUSHFRAME .PUSHFRAME .pushframeMASM64: Generates a UWOP_PUSH_MACHFRAME unwind code entry. If the optional code is specified, the unwind code entry is given a modifier of 1. Otherwise the modifier is 0.ENDIFENDIFendif32-bit MASM only..ERRE.ERRE.erre.Generates an error if expression is false (0)..ERR.ERR.errGenerates an error..LISTIF.LISTIF.listif9Starts listing of statements in false conditional blocks..LALL.LALL.lallBStarts listing of all statements in macros. Same as .LISTMACROALL.DWORDDWORDdword`Pseudo-Instruction declaring uninitialized data. Double Word, Single Precision (4 bytes, 32 bit)ELSEELSEelseEMarks the beginning of an alternate block within a conditional block.IFDEFIFDEFifdefKGrants assembly if name is a previously defined label, variable, or symbol.YMMWORDYMMWORDymmwordDPseudo-Instruction declaring uninitialized data. (32 bytes, 256 bit).ELSIF.ELSIF.elsifqGenerates code that tests condition1 (for example, AX > 7) and executes the statements if that condition is true.DYDYdy]Pseudo-Instruction declaring initialized data. (32 bytes, 256 bit). DY is a synonym of YWORD..586P.586P.586pVEnables assembly of all instructions (including privileged) for the Pentium processor.ENDPENDPendp;Marks the end of procedure name previously begun with PROC.PURGEPURGEpurge)Deletes the specified macros from memory..CREF.CREF.crefVEnables listing of symbols in the symbol portion of the symbol table and browser file.REAL8REAL8real8lAllocates and optionally initializes a double-precision (8-byte) floating-point number for each initializer..SAVEREG.SAVEREG.saveregMASM64: Generates either a UWOP_SAVE_NONVOL or a UWOP_SAVE_NONVOL_FAR unwind code entry for the specified register (reg) and offset (offset) using the current prologue offset. MASM will choose the most efficient encoding. .SAVEXMM128 .SAVEXMM128 .savexmm128MASM64: Generates either a UWOP_SAVE_XMM128 or a UWOP_SAVE_XMM128_FAR unwind code entry for the specified XMM register and offset using the current prologue offset. MASM will choose the most efficient encoding.DFDFdf[Pseudo-Instruction declaring initialized data. (6 bytes, 48 bit). DF is a synonym of FWORD.IFIDNIFIDNifidn0Grants assembly if the text items are identical.TEXTEQUTEXTEQUtextequAssigns textitem to name. The textitem can be a literal string, a constant preceded by a %, or the string returned by a macro function..STACK.STACK.stackWhen used with .MODEL, defines a stack segment (with segment name STACK). The optional size specifies the number of bytes for the stack (default 1,024). The .STACK directive automatically closes the stack statement.RECORDRECORDrecordDeclares a record type consisting of the specified fields. fieldname names the field, width specifies the number of bits, and expression gives its initial value.ZMMWORDZMMWORDzmmwordDPseudo-Instruction declaring uninitialized data. (64 bytes, 512 bit)REAL10REAL10real10ZAllocates and optionally initializes a 10-byte floating-point number for each initializer..686P.686P.686pZEnables assembly of all instructions (including privileged) for the Pentium Pro processor.DZDZdz]Pseudo-Instruction declaring initialized data. (64 bytes, 512 bit). DZ is a synonym of ZWORD.FORFORfor}Marks a block that will be repeated once for each argument, with the current argument replacing parameter on each repetition.INSTRINSTRinstr5Finds the first occurrence of textitem2 in textitem1.RESWRESWreswsPseudo-Instruction declaring uninitialized data. Word, Half Precision (2 bytes, 16 bit). RESW is a synonym of WORD.REAL4REAL4real4lAllocates and optionally initializes a single-precision (4-byte) floating-point number for each initializer.ELSEIFELSEIFelseif(Combines ELSE and IF into one statement. .SETFRAME .SETFRAME .setframeHMASM64: Fills in the frame register field and offset in the unwind information using the specified register (reg) and offset (offset). The offset must be a multiple of 16 and less than or equal to 240. This directive also generates a UWOP_SET_FPREG unwind code entry for the specified register using the current prologue offset.ZWORDZWORDzwordDPseudo-Instruction declaring uninitialized data. (64 bytes, 512 bit)DQDQdqwPseudo-Instruction declaring initialized data. Quad word, Double Precision (8 bytes, 64 bit). DQ is a synonym of QWORD..CONST.CONST.constPWhen used with .MODEL, starts a constant data segment (with segment name CONST).IFNBIFNBifnb)Grants assembly if textitem is not blank.SUBSTRSUBSTRsubstrReturns a substring of textitem, starting at position. The textitem can be a literal string, a constant preceded by a %, or the string returned by a macro function. .ALLOCSTACK .ALLOCSTACK .allocstackzMASM64: Generates a UWOP_ALLOC_SMALL or a UWOP_ALLOC_LARGE with the specified size for the current offset in the prologue.RESBRESBresb`Pseudo-Instruction declaring uninitialized data. Byte (1 byte, 8 bit). RESB is a synonym of BYTEINCLUDEINCLUDEincludehInserts source code from the source file given by filename into the current source file during assembly..ERRDEF.ERRDEF.errdefNGenerates an error if name is a previously defined label, variable, or symbol..ERRDIF.ERRDIF.errdif3Generates an error if the text items are different..686.686.686MEnables assembly of nonprivileged instructions for the Pentium Pro processor..STARTUP.STARTUP.startup Generates program start-up code..REPEAT.REPEAT.repeatGenerates code that repeats execution of the block of statements until condition becomes true. .UNTILCXZ, which becomes true when CX is zero, may be substituted for .UNTIL. The condition is optional with .UNTILCXZ..386.386.386Enables assembly of nonprivileged instructions for the 80386 processor; disables assembly of instructions introduced with later processors.LABELLABELlabel_Creates a new label by assigning the current location-counter value and the given type to name.STRUCTSTRUCTstruct|Declares a structure type having the specified fielddeclarations. Each field must be a valid data definition. Same as STRUC.MMWORDMMWORDmmword^Pseudo-Instruction declaring uninitialized data. Quad word, Double Precision (8 bytes, 64 bit)ENDMENDMendm#Terminates a macro or repeat block.LOCALLOCALlocalkIn the first directive, within a macro, LOCAL defines labels that are unique to each instance of the macro.UNIONUNIONunionDeclares a union of one or more data types. The fielddeclarations must be valid data definitions. Omit the ENDS name label on nested UNION definitions.RESZRESZreszaPseudo-Instruction declaring uninitialized data. (64 bytes, 512 bit). RESZ is a synonym of ZWORD.TITLETITLEtitle"Defines the program listing title..MODEL.MODEL.model%Initializes the program memory model.PUBLICPUBLICpublicoMakes each variable, label, or absolute symbol specified as name available to all other modules in the program.OFFSETOFFSEToffset"Returns the address of a variable.EVENEVENeven8Aligns the next variable or instruction on an even byte.PTRPTRptr&Specifies a type for a memory address..NOLIST.NOLIST.nolist*Suppresses program listing. Same as .XLISTCOMMENTCOMMENTcommentKTreats all text between or on the same line as the delimiters as a comment.XMMWORDXMMWORDxmmwordDPseudo-Instruction declaring uninitialized data. (16 bytes, 128 bit)ORGORGorg(Sets the location counter to expression..UNTIL.UNTIL.untilGenerates code that repeats execution of the block of statements until condition becomes true. .UNTILCXZ, which becomes true when CX is zero, may be substituted for .UNTIL. The condition is optional with .UNTILCXZ..ERRNDEF.ERRNDEF.errndef0Generates an error if name has not been defined.CATSTRCATSTRcatstrConcatenates text items.IFNDEFIFNDEFifndef-Grants assembly if name has not been defined.ELSEIF2ELSEIF2elseif2GELSEIF block evaluated on every assembly pass if OPTION:SETIF2 is TRUE.RESDRESDresd}Pseudo-Instruction declaring uninitialized data. Double Word, Single Precision (4 bytes, 32 bit). RESD is a synonym of DWORD..586.586.586IEnables assembly of nonprivileged instructions for the Pentium processor..CODE.CODE.code=When used with .MODEL, indicates the start of a code segment.DTDTdtxPseudo-Instruction declaring initialized data. Extended (Double) Precision (10 bytes, 80 bit). DT is a synonym of TBYTE.WORDWORDwordWPseudo-Instruction declaring uninitialized data. Word, Half Precision (2 bytes, 16 bit).SAFESEH.SAFESEH.safeseh7Registers a function as a structured exception handler.TWORDTWORDtword_Pseudo-Instruction declaring uninitialized data. Extended (Double) Precision (10 bytes, 80 bit).387.387.387;Enables assembly of instructions for the 80387 coprocessor..K3D.K3D.k3d%Enables assembly of K3D instructions.ECHOECHOechoHDisplays message to the standard output device (by default, the screen)..XMM.XMM.xmmCEnables assembly of Internet Streaming SIMD Extension instructions..ALPHA.ALPHA.alphaOrders segments alphabetically.SEGMENTSEGMENTsegment?Defines a program segment called name having segment attributesFWORDFWORDfwordCPseudo-Instruction declaring uninitialized data. (6 bytes, 48 bit).MACROMACROmacrouMarks a macro block called name and establishes parameter placeholders for arguments passed when the macro is called.ASSUMEASSUMEassume+Enables error checking for register values.OPTIONOPTIONoption/Enables and disables features of the assembler. .FARDATA? .FARDATA? .fardata?gWhen used with .MODEL, starts a far data segment for uninitialized data (segment name FAR_BSS or name).TYPEDEFTYPEDEFtypedef<Defines a new type called name, which is equivalent to type.COMMCOMMcommHCreates a communal variable with the attributes specified in definition..SALL.SALL.sall'Suppresses listing of macro expansions..DATA?.DATA?.data?]When used with .MODEL, starts a near data segment for uninitialized data (segment name _BSS)..XALL.XALL.xallHStarts listing of macro expansion statements that generate code or data..NOCREF.NOCREF.nocrefCSuppresses listing of symbols in the symbol table and browser file.PAGEPAGEpageThe first directive sets line length and character width of the program listing. If no arguments are given, generates a page break. The second directive increments the section number and resets the page number to 1.IFDIFIFDIFifdif0Grants assembly if the text items are different.ALIASALIASalias=The ALIAS directive creates an alternate name for a function..BREAK.BREAK.breakKGenerates code to terminate a .WHILE or .REPEAT block if condition is true. .UNTILCXZ .UNTILCXZ .untilcxzGenerates code that repeats execution of the block of statements until condition becomes true. .UNTILCXZ, which becomes true when CX is zero, may be substituted for .UNTIL. The condition is optional with .UNTILCXZ.BOOLEANBOOLEANbooleanBooleanSWORDSWORDsword^Pseudo-Instruction declaring uninitialized data. Signed Word, Half Precision (2 bytes, 16 bit).486.486.486GEnables assembly of nonprivileged instructions for the 80486 processor. .CONTINUE .CONTINUE .continueTGenerates code to jump to the top of a .WHILE or .REPEAT block if condition is true. POPCONTEXT POPCONTEXT popcontextRestores part or all of the current context (saved by the PUSHCONTEXT directive). The context can be ASSUMES, RADIX, LISTING, CPU, or ALL.DBDBdb\Pseudo-Instruction declaring initialized data. Byte (1 byte, 8 bit). DB is a synonym of BYTEEQUEQUequEQU defines a symbol to a given constant value: when EQU is used, the source line must contain a label. The action of EQU is to define the given label name to the value of its (only) operand. This definition is absolute, and cannot change later.OWORDOWORDowordaPseudo-Instruction declaring uninitialized data. IEEE 754-2008 Quad Precision (16 bytes, 128 bit).ERRB.ERRB.errb(Generates an error if textitem is blank.YWORDYWORDywordDPseudo-Instruction declaring uninitialized data. (32 bytes, 256 bit).WHILE.WHILE.whileRGenerates code that executes the block of statements while condition remains true. PUSHCONTEXT PUSHCONTEXT pushcontextSaves part or all of the current context: segment register assumes, radix value, listing and cref flags, or processor/coprocessor values. The context can be ASSUMES, RADIX, LISTING, CPU, or ALL..SEQ.SEQ.seq1Orders segments sequentially (the default order)..XCREF.XCREF.xcrefCSuppresses listing of symbols in the symbol table and browser file.RESQRESQresq{Pseudo-Instruction declaring uninitialized data. Quad word, Double Precision (8 bytes, 64 bit). RESQ is a synonym of QWORD.