CHAPTER 16  A86 RESERVED SYMBOLS

$        Current assembly pointer
.287     Directive
.LIST    Listing control
.NOLIST  Listing control
.RADIX   Directive
?        Uninitialized memory slot
A4       Address override prefix
A2       Address override prefix
AAA      ASCII adjust addition
AAD      ASCII adjust division
AAM      ASCII adjust multiply
AAS      ASCII adjust subtract
ABS      EXTRN specifier
ADC      Add with carry
ADD      Instruction
ADD4S    NEC Instruction
AH       Byte register
AL       Byte register
AND      Instruction/operator
ARPL     286 Prot Instruction
ASSUME   Ignored, compatibility
AT       SEGMENT specifier
AX       Word register

B        Byte memory specifier
BH       Byte register
BIT      Bit-mask operator
BL       Byte register
BOUND    Instruction
BP       Word register
BSF      Bit Scan Forward
BSR      Bit Scan Reverse
BSWAP    Byte Swap
BT       Bit Test
BTC      Bit Test Complement
BTR      Bit Test Reset
BTS      Bit Test Set
BX       Word register
BY       Bytes-combine operator
BYTE     Byte memory specifier

CALL     Instruction
CALL80   NEC Instruction
CBW      Convert byte to word
CDQ      Convert Double to Quad
CH       Byte register
CL       Byte register
CLC      Clear carry
CLD      Clear direction
CLI      Clear interrupt
CLRBIT   NEC Instruction
CLTS     286 Prot Instruction
                                                             16-2

CMC      Complement carry
CMP      Compare
CMP4S    NEC Instruction
CMPS     Compare string
CMPSB    Compare string byte
CMPSD    Compare string dword
CMPSW    Compare string word
CMPX8    Compare Xchg 8 bytes
CMPXCHG  Compare and Exchange
CODE     Segment name
COMMENT  Directive
COMMON   SEGMENT specifier
CPUID    Identify CPU
CRn      Control registers 0234
CS       Segment register
CWD      Convert word to dword
CWDE     CWD into EAX
CX       Word register

D        Dword specifier
DAA      Decimal adjust add
DAS      Decimal adjust sub
DATA     Segment name
DB       Define bytes
DD       Define dwords
DEC      Decrement
DEF      Defined operator
DH       Byte register
DI       Word register
DIV      Divide

DL       Byte register
DQ       Define Qwords
DRn      Debug registers 0--7
DS       Segment register
DT       Define Twords
DUP      Duplicate operator
DW       Define words
DWORD    Memory specifier
DX       Word register

EAX      Doubleword register
EBP      Doubleword register
EBX      Doubleword register
ECX      Doubleword register
EDI      Doubleword register
EDX      Doubleword register
ELSE     Conditional term
ELSEIF   Conditional term
                                                             16-3

END      Start specifier
ENDIF    Conditional term
ENDM     Ignored, future use
ENDP     End of procedure
ENDS     End of segment
ENTER    Instruction
EQ       Equals operator
EQU      Equate directive
ES       Segment register
ESI      Doubleword register
ESP      Doubleword register
EVEN     Coerce to even address
EXTRN    Declare type of a symbol

F        Far specifier
F2XM1    87 Instruction
F4X4     IIT-2C87 Instruction
FABS     87 Instruction
FADD     87 Instruction
FADDP    87 Instruction
FAR      Far specifier
FBANK    IIT-2C87 Instruction
FBLD     87 Instruction
FBSTP    87 Instruction
FCHS     87 Instruction
FCLEX    87 Instruction
FCOM     87 Instruction
FCOMP    87 Instruction
FCOMPP   87 Instruction
FCOS     387 Instruction

FDECSTP  87 Instruction
FDISI    87 Instruction
FDIV     87 Instruction
FDIVP    87 Instruction
FDIVR    87 Instruction
FDIVRP   87 Instruction
FENI     87 Instruction
FFREE    87 Instruction
FIADD    87 Instruction
FICOM    87 Instruction
FICOMP   87 Instruction

FIDIV    87 Instruction
FIDIVR   87 Instruction
FILD     87 Instruction
FIMUL    87 Instruction
FINCSTP  87 Instruction
FINIT    87 Instruction
FIST     87 Instruction
FISTP    87 Instruction
FISUB    87 Instruction
FISUBR   87 Instruction
                                                             16-4

FLD      87 Instruction
FLD1     87 Instruction
FLDCW    87 Instruction
FLDENV   87 Instruction
FLDL2E   87 Instruction
FLDL2T   87 Instruction
FLDLG2   87 Instruction
FLDLN2   87 Instruction
FLDPI    87 Instruction
FLDZ     87 Instruction
FMUL     87 Instruction
FMULP    87 Instruction

FNCLEX   87 Instruction
FNDISI   87 Instruction
FNENI    87 Instruction
FNINIT   87 Instruction
FNOP     87 Instruction
FNSAVE   87 Instruction
FNSTCW   87 Instruction
FNSTENV  87 Instruction
FNSTSW   87 Instruction

FPATAN   87 Instruction
FPREM    87 Instruction
FPREM1   387 Instruction
FPTAN    87 Instruction
FRNDINT  87 Instruction
FRSTOR   87 Instruction
FS       Segment register
FSAVE    87 Instruction
FSCALE   87 Instruction
FSETPM   87 Instruction

FSIN     387 Instruction
FSINCOS  387 Instruction
FSQRT    87 Instruction
FST      87 Instruction
FSTCW    87 Instruction
FSTENV   87 Instruction
FSTP     87 Instruction
FSTSW    87 Instruction

FSUB     87 Instruction
FSUBP    87 Instruction
FSUBR    87 Instruction
FSUBRP   87 Instruction
FTST     87 Instruction
                                                             16-5

FUCOM    387 Instruction
FUCOMP   387 Instruction
FUCOMPP  387 Instruction
FWAIT    87 Instruction
FXAM     87 Instruction
FXCH     87 Instruction
FXTRACT  87 Instruction
FYL2X    87 Instruction
FYL2XP1  87 Instruction

GE       Greater/equal operator
GROUP    Group of segments
GS       Segment register
GT       Greater than operator
HIGH     High byte of word op
HLT      Halt
IDIV     Integer divide
IF       Skip/conditional term
IMUL     Integer multiply

IN       Input from port
INC      Increment
INCLUDE  Include another file
INS      Input string
INSB     Input string byte
INSD     Input string doubleword
INSW     Input string word

INT      Interrupt
INTO     Interrupt on overflow
INVD     Invalidate data cache
INVLPG   Invalidate TLB entry
IRET     Interrupt return
IRETD    Interrupt return 32-bit

JA       Jump on above
JAE      Jump above equal
JB       Jump on below
JBE      Jump below equal
JC       Jump on carry

JCXZ     Jump on CX zero
JE       Jump on equal
JECXZ    Jump on ECX zero
JG       Jump on greater
JGE      Jump greater equal

JL       Jump on less
JLE      Jump less equal
JMP      Jump unconditional
JNA      Jump not above
JNAE     Jump not above equal
JNB      Jump not below
JNBE     Jump not below equal
JNC      Jump not carry
                                                             16-6

JNE      Jump not equal
JNG      Jump not greater
JNGE     Jump not greater equ
JNL      Jump not less
JNLE     Jump not less equal
JNO      Jump not overflow
JNP      Jump not parity
JNS      Jump not sign
JNZ      Jump not zero

JO       Jump overflow
JP       Jump parity
JPE      Jump parity even
JPO      Jump parity odd
JS       Jump on sign
JZ       Jump on zero

L2E      Real constant
L2T      Real constant
LABEL    Declaration
LAHF     Load AH flags
LAR      286 Prot Instruction
LDS      Load into DS
LE       Less equal operator
LEA      Load eff address
LEAVE    Instruction

LES      Load into ES
LFS      Load into FS
LG2      Real constant
LGDT     286 Prot Instruction
LGS      Load into GS

LIDT     286 Prot Instruction
LLDT     286 Prot Instruction
LMSW     286 Prot Instruction
LN2      Real constant
LOCK     Instruction
LODBITS  NEC Instruction

LODS     Load string
LODSB    Load string byte
LODSD    Load string doubleword
LODSW    Load string word
LONG     Operator

LOOP     Instruction
LOOPE    Loop on equal
LOOPNE   Loop not equal
LOOPNZ   Loop not zero
LOOPZ    Loop on zero
LOW      Operator
                                                             16-7

LSL      286 Prot Instruction
LSS      Load into SS
LT       Less than operator
LTR      286 Prot Instruction
MACRO    Directive
MAIN     Program strating label
MEMORY   Segment specifier

MOD      Operator
MOV      Instruction
MOVS     Move string
MOVSB    Move string byte
MOVSD    Move string doubleword
MOVSW    Move string word
MOVSX    Move sign extended
MOVZX    Move zero extended
MUL      Multiply

NAME     .OBJ module name
NE       Not equals operator
NEAR     Operator
NEG      Instruction
NIL      No code instruction
NOP      No operation
NOT      Instruction/operator
NOTBIT   NEC Instruction

O2       Operand override prefix
O4       Operand override prefix
OFFSET   Operator
OR       Instruction/operator
ORG      Directive
OUT      Output to port
OUTS     Output string
OUTSB    Output string byte
OUTSD    Output string doubleword
OUTSW    Output string word

PAGE     Listing page control
PARA     Segment specifier
PI       Real Constant
POP      Instruction
POPA     Pop all
POPAD    Pop all doublewords
POPF     Pop flags
POPFD    Pop doubleword flags
PROC     Procedure Directive

PTR      Ignored, compatibility
PUBLIC   Specify public symbols
PUSH     Instruction
PUSHA    Push all
PUSHAD   Push all doublewords
PUSHF    Push flags
PUSHFD   Push doubleword flags
Q        Qword specifier
QWORD    Memory specifier
                                                             16-8

RADIX    Directive
RCL      Rotate carry left
RCR      Rotate carry right
RDMSR    Read model specific reg
RDTSC    Read time stamp counter
REF      Referenced operator

REP      Repeat prefix
REPC     NEC Instruction
REPE     Repeat while equal
REPNC    NEC Instruction
REPNE    Repeat not equal
REPNZ    Repeat while zero
REPT     Ignored, future use
REPZ     Repeat non zero

RET      Return
RETF     Far Return
ROL      Rotate left
ROL4     NEC Instruction
ROR      Rotate right
ROR4     NEC Instruction
RSM      Resume from sys mgmt.

SAHF     Store AH to flags
SAL      Shift arith left
SAR      Shift arith right
SBB      Subtract with borrow

SCAS     Scan string
SCASB    Scan string byte
SCASD    Scan string doubleword
SCASW    Scan string word
SEG      Operator
SEGMENT  Directive

SETcond  Set condition
         (see J, all but eCXZ)
SETBIT   NEC Instruction
SGDT     286 Prot Instruction
SHL      Instruction/operator
SHLD     Shift left double
SHORT    Operator
SHR      Instruction/operator
SHRD     Shift right double

SI       Word register
SIDT     286 Prot Instruction
SLDT     286 Prot Instruction
SMSW     286 Prot Instruction
SP       Word register
SS       Segment register
                                                             16-9

ST       EQU 0 for compatibility
STACK    Segment specifier
STC      Set carry
STD      Set direction
STI      Set interrupts
STOBITS  NEC Instruction

STOS     Store string
STOSB    Store string byte
STOSD    Store string doubleword
STOSW    Store string word

STR      286 Prot Instruction
STRUC    Structure directive
SUB      Instruction
SUB4S    NEC Instruction
SUBTTL   Listing subtitle

T        Tbyte specifier
TBYTE    Memory specifier
TEST     Instruction
TESTBIT  NEC Instruction
THIS     This-location specifier
TITLE    Listing title
TRn      Test registers 6--7
TYPE     Operator
VERR     286 Prot Instruction
VERW     286 Prot Instruction

W        Word specifier
WAIT     Instruction
WBINVD   Write back, invalidate
WORD     Word specifier
WRMSR    Write model specific reg

XADD     Exchange and add
XCHG     Instruction
XLAT     Translate byte
XLATB    Translate byte
XOR      Instruction/operator


