Document revision date: 30 March 2001

## VAX MACRO and Instruction Set Reference Manual

Previous | Contents | Index

## C.3 Operators

This section lists the VAX MACRO unary, binary, and macro string operators.

### C.3.1 Unary Operators

Table C-3 summarizes the VAX MACRO unary operators.

Table C-3 Summary of Unary Operators
Unary Operator | Operator Name | Example | Effect
--- | --- | --- | ---
+ | Plus sign | +A | Results in the positive value of A (default)
- | Minus sign | -A | Results in the negative (two's complement) value of A
^B | Binary | ^B11000111 | Specifies that 11000111 is a binary number
^D | Decimal | ^D127 | Specifies that 127 is a decimal number
^O | Octal | ^034 | Specifies that 34 is an octal number
^X | Hexadecimal | ^XFCF9 | Specifies that FCF9 is a hexadecimal number
^A | ASCII | ^A/ABC/ | Produces an ASCII string; the characters between the matching delimiters are converted to ASCII representation
^M | Register mask | ^M<R3,R4,R5> | Specifies the registers R3, R4, and R5 in the register mask
^F | Floating point | ^F3.0 | Specifies that 3.0 is a floating-point number
^C | Complement | ^C24 | Produces the one's complement value of 24 (decimal)

### C.3.2 Binary Operators

Table C-4 summarizes the VAX MACRO binary operators.

Table C-4 Summary of Binary Operators
Binary Operator | Operator Name | Example | Operation
--- | --- | --- | ---
+ | Plus sign | A+B | Addition
- | Minus sign | A-B | Subtraction
* | Asterisk | A*B | Multiplication
/ | Slash | A/B | Division
@ | At sign | A@B | Arithmetic Shift
& | Ampersand | A&B | Logical AND
! | Exclamation point | A!B | Logical inclusive OR
\ | Backslash | A\B | Logical exclusive OR

### C.3.3 Macro String Operators

Table C-5 summarizes the macro string operators. These operators can be used only in macros.

Table C-5 Macro String Operators
Format | Function
--- | ---
%LENGTH(string) | Returns the length of the string
%LOCATE(string1,string2[,symbol]) | Locates the substring string1 within string2 starting the search at the character position specified by symbol
%EXTRACT(symbol1,symbol2,string) | Extracts a substring from string that begins at character position specified by symbol1 and has a length specified by symbol2

## C.4 Addressing Modes

Table C-6 summarizes the VAX MACRO addressing modes.

Table C-6 Summary of Addressing Modes
Type | Addressing Mode | Format | Hex Value | Description | Can Be Indexed?
--- | --- | --- | --- | --- | ---
General register | Register | Rn | 5 | Register contains the operand. | No
| Register deferred | (Rn) | 6 | Register contains the address of the operand. | Yes
| Autoincrement | (Rn)+ | 8 | Register contains the address of the operand; the processor increments the register contents by the size of the operand data type. | Yes
| Autoincrement deferred | @(Rn)+ | 9 | Register contains the address of the operand address; the processor increments the register contents by 4. | Yes
| Autodecrement | -(Rn) | 7 | The processor decrements the register contents by the size of the operand data type; the register then contains the address of the operand. | Yes
| Displacement | dis(Rn) B^dis(Rn) W^dis(Rn) L^dis(Rn) | A C E | The sum of the contents of the register and the displacement is the address of the operand; B^, W^, and L^, respectively, indicate byte, word, and longword displacement. | Yes
| Displacement deferred | @dis(Rn) @B^dis(Rn) @W^dis(Rn) @L^dis(Rn) | B D F | The sum of the contents of the register and the displacement is the address of the operand address; B^, W^, and L^, respectively, indicate, byte, word, and longword displacement. | Yes
| Literal | #literal S^#literal | 0-3 | The literal specified is the operand; the literal is stored as a short literal. | No
Program Counter | Relative | address B^address W^address L^address | A C E | The address specified is the address of the operand; the address is stored as a displacement from the PC; B^, W^, and L^, respectively, indicate byte, word, and longword displacement. | Yes
| Relative deferred | @address @B^address @W^address @L^address | B D F | The address specified is the address of the operand address; the address specified is stored as a displacement from the PC; B^, W^, and L^ indicate byte, word, and longword displacement, respectively. | Yes
| Absolute | @#address | 9 | The address specified is the address of the operand; the address specified is stored as an absolute virtual address, not as a displacement. | Yes
| Immediate | #literal I^#literal | 8 | The literal specified is the operand; the literal is stored as a byte, word, longword, or quadword. | No
| General | G^address | --- | The address specified is the address of the operand; if the address is defined as relocatable, the linker stores the address as a displacement from the PC; if the address is defined as an absolute virtual address, the linker stores the address as an absolute value. | Yes
Index | Index | base-mode[Rx] | 4 | The base-mode specifies the base address, and the register specifies the index; the sum of the base address and the product of the contents of Rx and the size of the operand data type is the address of the operand; base mode can be any addressing mode except register, immediate, literal, index, or branch. | No
Branch | Branch | address | --- | The address specified is the operand; this address is stored as a displacement from the PC; branch mode can only be used with the branch instructions. | No

Key:

> Rn ---Any general register R0 to R12. Note that the AP, FP, or SP register can be used in place of Rn.
> Rx ---Any general register R0 to R12. Note that the AP, FP, or SP register can be used in place of Rx. Rx cannot be the same as the Rn specified in the base-mode for certain base modes (see Section 5.3 ).
> dis ---An expression specifying a displacement.
> address ---An expression specifying an address.
> literal ---An expression, an integer constant, or a floating-point constant.

## Appendix D
Permanent Symbol Table Defined for Use with VAX MACRO

The permanent symbol table (PST) contains the symbols that VAX MACRO automatically recognizes. These symbols consist of both opcodes and assembler directives. Table D_1, Table D_2, and Table D-3 present the opcodes (instruction set) in alphabetical and numerical order. Section C.1 (in Appendix C) presents the assembler directives.

See Chapter 9 and Chapter 10 for detailed descriptions of the instruction set.

Table D-1 Opcodes (Alphabetic Order) and Functions
Hex Value | Mnemonic | Functional Name
--- | --- | ---
9D | ACBB | Add compare and branch byte
6F | ACBD | Add compare and branch D_floating
4F | ACBF | Add compare and branch F_floating
4FFD | ACBG | Add compare and branch G_floating
6FFD | ACBH | Add compare and branch H_floating
F1 | ACBL | Add compare and branch longword
3D | ACBW | Add compare and branch word
58 | ADAWI | Add aligned word interlocked
80 | ADDB2 | Add byte 2 operand
81 | ADDB3 | Add byte 3 operand
60 | ADDD2 | Add D_floating 2 operand
61 | ADDD3 | Add D_floating 3 operand
40 | ADDF2 | Add F_floating 2 operand
41 | ADDF3 | Add F_floating 3 operand
40FD | ADDG2 | Add G_floating 2 operand
41FD | ADDG3 | Add G_floating 3 operand
60FD | ADDH2 | Add H_floating 2 operand
61FD | ADDH3 | Add H_floating 3 operand
C0 | ADDL2 | Add longword 2 operand
C1 | ADDL3 | Add longword 3 operand
20 | ADDP4 | Add packed 4 operand
21 | ADDP6 | Add packed 6 operand
A0 | ADDW2 | Add word 2 operand
A1 | ADDW3 | Add word 3 operand
D8 | ADWC | Add with carry
F3 | AOBLEQ | Add one and branch on less or equal
F2 | AOBLSS | Add one and branch on less
78 | ASHL | Arithmetic shift longword
F8 | ASHP | Arithmetic shift and round packed
79 | ASHQ | Arithmetic shift quadword
E1 | BBC | Branch on bit clear
E5 | BBCC | Branch on bit clear and clear
E7 | BBCCI | Branch on bit clear and clear interlocked
E3 | BBCS | Branch on bit clear and set
E0 | BBS | Branch on bit set
E4 | BBSC | Branch on bit set and clear
E2 | BBSS | Branch on bit set and set
E6 | BBSSI | Branch on bit set and set interlocked
1E | BCC | Branch on carry clear
1F | BCS | Branch on carry set
13 | BEQL | Branch on equal
13 | BEQLU | Branch on equal unsigned
18 | BGEQ | Branch on greater or equal
1E | BGEQU | Branch on greater or equal unsigned
14 | BGTR | Branch on greater
1A | BGTRU | Branch on greater unsigned
8A | BICB2 | Bit clear byte 2 operand
8B | BICB3 | Bit clear byte 3 operand
CA | BICL2 | Bit clear longword 2 operand
CB | BICL3 | Bit clear longword 3 operand
B9 | BICPSW | Bit clear program status word
AA | BICW2 | Bit clear word 2 operand
AB | BICW3 | Bit clear word 3 operand
88 | BISB2 | Bit set byte 2 operand
89 | BISB3 | Bit set byte 3 operand
C8 | BISL2 | Bit set longword 2 operand
C9 | BISL3 | Bit set longword 3 operand
B8 | BISPSW | Bit set program status word
A8 | BISW2 | Bit set word 2 operand
A9 | BISW3 | Bit set word 3 operand
93 | BITB | Bit test byte
D3 | BITL | Bit test longword
B3 | BITW | Bit test word
E9 | BLBC | Branch on low bit clear
E8 | BLBS | Branch on low bit set
15 | BLEQ | Branch on less or equal
1B | BLEQU | Branch on less or equal unsigned
19 | BLSS | Branch on less
1F | BLSSU | Branch on less unsigned
12 | BNEQ | Branch on not equal
12 | BNEQU | Branch on not equal unsigned
03 | BPT | Break point trap
11 | BRB | Branch with byte displacement
31 | BRW | Branch with word displacement
10 | BSBB | Branch to subroutine with byte displacement
30 | BSBW | Branch to subroutine with word displacement
1C | BVC | Branch on overflow clear
1D | BVS | Branch on overflow set
FA | CALLG | Call with general argument list
FB | CALLS | Call with stack
8F | CASEB | Case byte
CF | CASEL | Case longword
AF | CASEW | Case word
BD | CHME | Change mode to executive
BC | CHMK | Change mode to kernel
BE | CHMS | Change mode to supervisor
BF | CHMU | Change mode to user
94 | CLRB | Clear byte
7C | CLRD | Clear D_floating
DF | CLRF | Clear F_floating
7C | CLRG | Clear G_floating
7CFD | CLRH | Clear H_floating
D4 | CLRL | Clear longword
7CFD | CLRO | Clear octaword
7C | CLRQ | Clear quadword
B4 | CLRW | Clear word
91 | CMPB | Compare byte
29 | CMPC3 | Compare character 3 operand
2D | CMPC5 | Compare character 5 operand
71 | CMPD | Compare D_floating
51 | CMPF | Compare F_floating
51FD | CMPG | Compare G_floating
71FD | CMPH | Compare H_floating
D1 | CMPL | Compare longword
35 | CMPP3 | Compare packed 3 operand
37 | CMPP4 | Compare packed 4 operand
EC | CMPV | Compare field
B1 | CMPW | Compare word
ED | CMPZV | Compare zero-extended field
0B | CRC | Calculate cyclic redundancy check
6C | CVTBD | Convert byte to D_floating
4C | CVTBF | Convert byte to F_floating
4CFD | CVTBG | Convert byte to G_floating
6CFD | CVTBH | Convert byte to H_floating
98 | CVTBL | Convert byte to longword
99 | CVTBW | Convert byte to word
68 | CVTDB | Convert D_floating to byte
76 | CVTDF | Convert D_floating to F_floating
32FD | CVTDH | Convert D_floating to H_floating
6A | CVTDL | Convert D_floating to longword
69 | CVTDW | Convert D_floating to word
48 | CVTFB | Convert F_floating to byte
56 | CVTFD | Convert F_floating to D_floating
99FD | CVTFG | Convert F_floating to G_floating
98FD | CVTFH | Convert F_floating to H_floating
4A | CVTFL | Convert F_floating to longword
49 | CVTFW | Convert F_floating to word
48FD | CVTGB | Convert G_floating to byte
33FD | CVTGF | Convert G_floating to F_floating
56FD | CVTGH | Convert G_floating to H_floating
4AFD | CVTGL | Convert G_floating to longword
49FD | CVTGW | Convert G_floating to word
68FD | CVTHB | Convert H_floating to byte
F7FD | CVTHD | Convert H_floating to D_floating
F6FD | CVTHF | Convert H_floating to F_floating
76FD | CVTHG | Convert H_floating to G_floating
6AFD | CVTHL | Convert H_floating to longword
69FD | CVTHW | Convert H_floating to word
F6 | CVTLB | Convert longword to byte
6E | CVTLD | Convert longword to D_floating
4E | CVTLF | Convert longword to F_floating
4EFD | CVTLG | Convert longword to G_floating
6EFD | CVTLH | Convert longword to H_floating
F9 | CVTLP | Convert longword to packed
F7 | CVTLW | Convert longword to word
36 | CVTPL | Convert packed to longword
08 | CVTPS | Convert packed to leading separate
24 | CVTPT | Convert packed to trailing
6B | CVTRDL | Convert rounded D_floating to longword
4B | CVTRFL | Convert rounded F_floating to longword
4BFD | CVTRGL | Convert rounded G_floating to longword
6BFD | CVTRHL | Convert rounded H_floating to longword
09 | CVTSP | Convert leading separate to packed
26 | CVTTP | Convert trailing to packed
33 | CVTWB | Convert word to byte
6D | CVTWD | Convert word to D_floating
4D | CVTWF | Convert word to F_floating
4DFD | CVTWG | Convert word to G_floating
6DFD | CVTWH | Convert word to H_floating
32 | CVTWL | Convert word to longword
97 | DECB | Decrement byte
D7 | DECL | Decrement longword
B7 | DECW | Decrement word
86 | DIVB2 | Divide byte 2 operand
87 | DIVB3 | Divide byte 3 operand
66 | DIVD2 | Divide D_floating 2 operand
67 | DIVD3 | Divide D_floating 3 operand
46 | DIVF2 | Divide F_floating 2 operand
47 | DIVF3 | Divide F_floating 3 operand
46FD | DIVG2 | Divide G_floating 2 operand
47FD | DIVG3 | Divide G_floating 3 operand
66FD | DIVH2 | Divide H_floating 2 operand
67FD | DIVH3 | Divide H_floating 3 operand
C6 | DIVL2 | Divide longword 2 operand
C7 | DIVL3 | Divide longword 3 operand
27 | DIVP | Divide packed
A6 | DIVW2 | Divide word 2 operand
A7 | DIVW3 | Divide word 3 operand
38 | EDITPC | Edit packed to character
7B | EDIV | Extended divide
74 | EMODD | Extended modulus D_floating
54 | EMODF | Extended modulus F_floating
54FD | EMODG | Extended modulus G_floating
74FD | EMODH | Extended modulus H_floating
7A | EMUL | Extended multiply
EE | EXTV | Extract field
EF | EXTZV | Extract zero-extended field
EB | FFC | Find first clear bit
EA | FFS | Find first set bit
00 | HALT | Halt
96 | INCB | Increment byte
D6 | INCL | Increment longword
B6 | INCW | Increment word
0A | INDEX | Index calculation
5C | INSQHI | Insert into queue at head, interlocked
5D | INSQTI | Insert into queue at tail, interlocked
0E | INSQUE | Insert into queue
F0 | INSV | Insert field
EDFD | IOTA | Generate compressed iota vector
17 | JMP | Jump
16 | JSB | Jump to subroutine
06 | LDPCTX | Load program context
3A | LOCC | Locate character
39 | MATCHC | Match characters
92 | MCOMB | Move complemented byte
D2 | MCOML | Move complemented longword
B2 | MCOMW | Move complemented word
DB | MFPR | Move from processor register
31FD | MFVP | Move from vector processor
8E | MNEGB | Move negated byte
72 | MNEGD | Move negated D_floating
52 | MNEGF | Move negated F_floating
52FD | MNEGG | Move negated G_floating
72FD | MNEGH | Move negated H_floating
CE | MNEGL | Move negated longword
AE | MNEGW | Move negated word
9E | MOVAB | Move address of byte
7E | MOVAD | Move address of D_floating
DE | MOVAF | Move address of F_floating
7E | MOVAG | Move address of G_floating
7EFD | MOVAH | Move address of H_floating
DE | MOVAL | Move address of longword
7EFD | MOVAO | Move address of octaword
7E | MOVAQ | Move address of quadword
3E | MOVAW | Move address of word
90 | MOVB | Move byte
28 | MOVC3 | Move character 3 operand
2C | MOVC5 | Move character 5 operand
70 | MOVD | Move D_floating
50 | MOVF | Move F_floating
50FD | MOVG | Move G_floating
70FD | MOVH | Move H_floating
D0 | MOVL | Move longword
7DFD | MOVO | Move data
34 | MOVP | Move packed
DC | MOVPSL | Move program status longword
7D | MOVQ | Move quadword
2E | MOVTC | Move translated characters
2F | MOVTUC | Move translated until character
B0 | MOVW | Move word
0A | MOVZBL | Move zero-extended byte to longword
9B | MOVZBW | Move zero-extended byte to word
3C | MOVZWL | Move zero-extended word to longword
DA | MTPR | Move to processor register
A9FD | MTVP | Move to vector processor
84 | MULB2 | Multiply byte 2 operand
85 | MULB3 | Multiply byte 3 operand
64 | MULD2 | Multiply D_floating 2 operand
65 | MULD3 | Multiply D_floating 3 operand
44 | MULF2 | Multiply F_floating 2 operand
45 | MULF3 | Multiply F_floating 3 operand
44FD | MULG2 | Multiply G_floating 2 operand
45FD | MULG3 | Multiply G_floating 3 operand
64FD | MULH2 | Multiply H_floating 2 operand
65FD | MULH3 | Multiply H_floating 3 operand
C4 | MULL2 | Multiply longword 2 operand
C5 | MULL3 | Multiply longword 3 operand
25 | MULP | Multiply packed
A4 | MULW2 | Multiply word 2 operand
A5 | MULW3 | Multiply word 3 operand
01 | NOP | No operation
75 | POLYD | Evaluate polynomial D_floating
55 | POLYF | Evaluate polynomial F_floating
55FD | POLYG | Evaluate polynomial G_floating
75FD | POLYH | Evaluate polynomial H_floating
BA | POPR | Pop registers
0C | PROBER | Probe read access
0D | PROBEW | Probe write access
9F | PUSHAB | Push address of byte
7F | PUSHAD | Push address of D_floating
DF | PUSHAF | Push address of F_floating
7F | PUSHAG | Push address of G_floating
7FFD | PUSHAH | Push address of H_floating
DF | PUSHAL | Push address of longword
7FFD | PUSHAO | Push address of octaword
7F | PUSHAQ | Push address of quadword
3F | PUSHAW | Push address of word
DD | PUSHL | Push longword
BB | PUSHR | Push registers
02 | REI | Return from exception or interrupt
5E | REMQHI | Remove from queue at head, interlocked
5F | REMQTI | Remove from queue at tail, interlocked
0F | REMQUE | Remove from queue
04 | RET | Return from called procedure
9C | ROTL | Rotate longword
05 | RSB | Return from subroutine
D9 | SBWC | Subtract with carry
2A | SCANC | Scan for character
3B | SKPC | Skip character
F4 | SOBGEQ | Subtract one and branch on greater or equal
F5 | SOBGTR | Subtract one and branch on greater
2B | SPANC | Span characters
82 | SUBB2 | Subtract byte 2 operand
83 | SUBB3 | Subtract byte 3 operand
62 | SUBD2 | Subtract D_floating 2 operand
63 | SUBD3 | Subtract D_floating 3 operand
42 | SUBF2 | Subtract F_floating 2 operand
43 | SUBF3 | Subtract F_floating 3 operand
42FD | SUBG2 | Subtract G_floating 2 operand
43FD | SUBG3 | Subtract G_floating 3 operand
62FD | SUBH2 | Subtract H_floating 2 operand
63FD | SUBH3 | Subtract H_floating 3 operand
C2 | SUBL2 | Subtract longword 2 operand
C3 | SUBL3 | Subtract longword 3 operand
22 | SUBP4 | Subtract packed 4 operand
23 | SUBP6 | Subtract packed 6 operand
A2 | SUBW2 | Subtract word 2 operand
A3 | SUBW3 | Subtract word 3 operand
07 | SVPCTX | Save process context
95 | TSTB | Test byte
73 | TSTD | Test D_floating
53 | TSTF | Test F_floating
53FD | TSTG | Test G_floating
73FD | TSTH | Test H_floating
D5 | TSTL | Test longword
B5 | TSTW | Test word
35FD | VGATHL | Gather longword vector from memory to vector register
37FD | VGATHQ | Gather quadword vector from memory to vector register
34FD | VLDL | Load longword vector from memory to vector register
36FD | VLDQ | Load quadword vector from memory to vector register
87FD | VSADDD | Vector scalar add D_floating
85FD | VSADDF | Vector scalar add F_floating
83FD | VSADDG | Vector scalar add G_floating
81FD | VSADDL | Vector scalar add longword
CDFD | VSBICL | Vector scalar bit clear longword
C9FD | VSBISL | Vector scalar bit set longword
9DFD | VSCATL | Scatter longword vector from vector register to memory
9FFD | VSCATQ | Scatter quadword vector from vector register to memory
C7FD | VSCMPD | Vector scalar compare D_floating
C5FD | VSCMPF | Vector scalar compare F_floating
C3FD | VSCMPG | Vector scalar compare G_floating
C1FD | VSCMPL | Vector scalar compare longword
AFFD | VSDIVD | Vector scalar divide D_floating
ADFD | VSDIVF | Vector scalar divide F_floating
ABFD | VSDIVG | Vector scalar divide G_floating
EFFD | VSMERGE | Vector scalar merge
A7FD | VSMULD | Vector scalar multiply D_floating
A5FD | VSMULF | Vector scalar multiply F_floating
A3FD | VSMULG | Vector scalar multiply G_floating
A1FD | VSMULL | Vector scalar multiply longword
E5FD | VSSLLL | Vector scalar shift left logical longword
E1FD | VSSRLL | Vector scalar shift right logical longword
8FFD | VSSUBD | Vector scalar subtract D_floating
8DFD | VSSUBF | Vector scalar subtract F_floating
8BFD | VSSUBG | Vector scalar subtract G_floating
89FD | VSSUBL | Vector scalar subtract longword
9CFD | VSTL | Store longword vector from vector register to memory
9EFD | VSTQ | Store quadword vector from vector register to memory
E9FD | VSXORL | Vector scalar exclusive-OR longword
A8FD | VSYNC | Synchronize vector memory access
86FD | VVADDD | Vector vector add D_floating
84FD | VVADDF | Vector vector add F_floating
82FD | VVADDG | Vector vector add G_floating
80FD | VVADDL | Vector vector add longword
CCFD | VVBICL | Vector vector bit clear longword
C8FD | VVBISL | Vector vector bit set longword
C6FD | VVCMPD | Vector vector compare D_floating
C4FD | VVCMPF | Vector vector compare F_floating
C2FD | VVCMPG | Vector vector compare G_floating
C0FD | VVCMPL | Vector vector compare longword
ECFD | VVCVT | Vector convert
AEFD | VVDIVD | Vector vector divide D_floating
ACFD | VVDIVF | Vector vector divide F_floating
AAFD | VVDIVG | Vector vector divide G_floating
EEFD | VVMERGE | Vector vector merge
A6FD | VVMULD | Vector vector multiply F_floating
A4FD | VVMULF | Vector vector multiply F_floating
A2FD | VVMULG | Vector vector multiply G_floating
A0FD | VVMULL | Vector vector multiply longword
E4FD | VVSLLL | Vector vector shift left logical longword
E0FD | VVSRLL | Vector vector shift right logical longword
8EFD | VVSUBD | Vector vector subtract D_floating
8CFD | VVSUBF | Vector vector subtract F_floating
8AFD | VVSUBG | Vector vector subtract G_floating
88FD | VVSUBL | Vector vector subtract longword
E8FD | VVXORL | Vector vector exclusive-OR longword
FC | XFC | Extended function call
8C | XORB2 | Exclusive-OR byte 2 operand
8D | XORB3 | Exclusive-OR byte 3 operand
CC | XORL2 | Exclusive-OR longword 2 operand
CD | XORL3 | Exclusive-OR longword 3 operand
AC | XORW2 | Exclusive-OR word 2 operand
AD | XORW3 | Exclusive-OR word 3 operand

Table D-2 One_Byte Opcodes (Numeric Order)
Hex Value | Mnemonic | Hex Value | Mnemonic
--- | --- | --- | ---
00 | HALT | 30 | BSBW
01 | NOP | 31 | BRW
02 | REI | 32 | CVTWL
03 | BPT | 33 | CVTWB
04 | RET | 34 | MOVP
05 | RSB | 35 | CMPP3
06 | LDPCTX | 36 | CVTPL
07 | SVPCTX | 37 | CMPP4
08 | CVTPS | 38 | EDITPC
09 | CVTSP | 39 | MATCHC
0A | INDEX | 3A | LOCC
0B | CRC | 3B | SKPC
0C | PROBER | 3C | MOVZWL
0D | PROBEW | 3D | ACBW
0E | INSQUE | 3E | MOVAW
0F | REMQUE | 3F | PUSHAW
10 | BSBB | 40 | ADDF2
11 | BRB | 41 | ADDF3
12 | BNEQ, BNEQU | 42 | SUBF2
13 | BEQL, BEQLU | 43 | SUBF3
14 | BGTR | 44 | MULF2
15 | BLEQ | 45 | MULF3
16 | JSB | 46 | DIVF2
17 | JMP | 47 | DIVF3
18 | BGEQ | 48 | CVTFB
19 | BLSS | 49 | CVTFW
1A | BGTRU | 4A | CVTFL
1B | BLEQU | 4B | CVTRFL
1C | BVC | 4C | CVTBF
1D | BVS | 4D | CVTWF
1E | BGEQU, BCC | 4E | CVTLF
1F | BLSSU, BCS | 4F | ACBF
20 | ADDP4 | 50 | MOVF
21 | ADDP6 | 51 | CMPF
22 | SUBP4 | 52 | MNEGF
23 | SUBP6 | 53 | TSTF
24 | CVTPT | 54 | EMODF
25 | MULP | 55 | POLYF
26 | CVTTP | 56 | CVTFD
27 | DIVP | 57 | Reserved to Compaq
28 | MOVC3 | 58 | ADAWI
29 | CMPC3 | 59 | Reserved to Compaq
2A | SCANC | 5A | Reserved to Compaq
2B | SPANC | 5B | Reserved to Compaq
2C | MOVC5 | 5C | INSQHI
2D | CMPC5 | 5D | INSQTI
2E | MOVTC | 5E | REMQHI
2F | MOVTUC | 5F | REMQTI
60 | ADDD2 | 90 | MOVB
61 | ADDD3 | 91 | CMPB
62 | SUBD2 | 92 | MCOMB
63 | SUBD3 | 93 | BITB
64 | MULD2 | 94 | CLRB
65 | MULD3 | 95 | TSTB
66 | DIVD2 | 96 | INCB
67 | DIVD3 | 97 | DECB
68 | CVTDB | 98 | CVTBL
69 | CVTDW | 99 | CVTBW
6A | CVTDL | 9A | MOVZBL
6B | CVTRDL | 9B | MOVZBW
6C | CVTBD | 9C | ROTL
6D | CVTWD | 9D | ACBB
6E | CVTLD | 9E | MOVAB
6F | ACBD | 9F | PUSHAB
70 | MOVD | A0 | ADDW2
71 | CMPD | A1 | ADDW3
72 | MNEGD | A2 | SUBW2
73 | TSTD | A3 | SUBW3
74 | EMODD | A4 | MULW2
75 | POLYD | A5 | MULW3
76 | CVTDF | A6 | DIVW2
77 | Reserved to Compaq | A7 | DIVW3
78 | ASHL | A8 | BISW2
79 | ASHQ | A9 | BISW3
7A | EMUL | AA | BICW2
7B | EDIV | AB | BICW3
7C | CLRQ, CLRD, CLRG | AC | XORW2
7D | MOVQ | AD | XORW3
7E | MOVAQ, MOVAD, MOVAG | AE | MNEGW
7F | PUSHAQ, PUSHAD, PUSHAG | AF | CASEW
80 | ADDB2 | B0 | MOVW
81 | ADDB3 | B1 | CMPW
82 | SUBB2 | B2 | MCOMW
83 | SUBB3 | B3 | BITW
84 | MULB2 | B4 | CLRW
85 | MULB3 | B5 | TSTW
86 | DIVB2 | B6 | INCW
87 | DIVB3 | B7 | DECW
88 | BISB2 | B8 | BISPSW
89 | BISB3 | B9 | BICPSW
8A | BICB2 | BA | POPR
8B | BICB3 | BB | PUSHR
8C | XORB2 | BC | CHMK
8D | XORB3 | BD | CHME
8E | MNEGB | BE | CHMS
8F | CASEB | BF | CHMU
C0 | ADDL2 | E0 | BBS
C1 | ADDL3 | E1 | BBC
C2 | SUBL2 | E2 | BBSS
C3 | SUBL3 | E3 | BBCS
C4 | MULL2 | E4 | BBSC
C5 | MULL3 | E5 | BBCC
C6 | DIVL2 | E6 | BBSSI
C7 | DIVL3 | E7 | BBCCI
C8 | BISL2 | E8 | BLBS
C9 | BISL3 | E9 | BLBC
CA | BICL2 | EA | FFS
CB | BICL3 | EB | FFC
CC | XORL2 | EC | CMPV
CD | XORL3 | ED | CMPZV
CE | MNEGL | EE | EXTV
CF | CASEL | EF | EXTZV
D0 | MOVL | F0 | INSV
D1 | CMPL | F1 | ACBL
D2 | MCOML | F2 | AOBLSS
D3 | BITL | F3 | AOBLEQ
D4 | CLRL, CLRF | F4 | SOBGEQ
D5 | TSTL | F5 | SOBGTR
D6 | INCL | F6 | CVTLB
D7 | DECL | F7 | CVTLW
D8 | ADWC | F8 | ASHP
D9 | SBWC | F9 | CVTLP
DA | MTPR | FA | CALLG
DB | MFPR | FB | CALLS
DC | MOVPSL | FC | XFC
DD | PUSHL | FD | ESCD to Compaq
DE | MOVAL, MOVA | FE | ESCE to Compaq
DF | PUSHAL, PUSHAF | FF | ESCF to Compaq

Table D-3 Two_Byte Opcodes (Numeric Order)
Hex Value | Mnemonic | Hex Value | Mnemonic
--- | --- | --- | ---
00FD | Reserved to Compaq | 30FD | Reserved to Compaq
01FD | Reserved to Compaq | 31FD | MFVP
02FD | Reserved to Compaq | 32FD | CVTDH
03FD | Reserved to Compaq | 33FD | CVTGF
04FD | Reserved to Compaq | 34FD | VLDL
05FD | Reserved to Compaq | 35FD | VGATHL
06FD | Reserved to Compaq | 36FD | VLDQ
07FD | Reserved to Compaq | 37FD | VGATHQ
08FD | Reserved to Compaq | 38FD | Reserved to Compaq
09FD | Reserved to Compaq | 39FD | Reserved to Compaq
0AFD | Reserved to Compaq | 3AFD | Reserved to Compaq
0BFD | Reserved to Compaq | 3BFD | Reserved to Compaq
0CFD | Reserved to Compaq | 3CFD | Reserved to Compaq
0DFD | Reserved to Compaq | 3DFD | Reserved to Compaq
0EFD | Reserved to Compaq | 3EFD | Reserved to Compaq
0FFD | Reserved to Compaq | 3FFD | Reserved to Compaq
10FD | Reserved to Compaq | 40FD | ADDG2
11FD | Reserved to Compaq | 41FD | ADDG3
12FD | Reserved to Compaq | 42FD | SUBG2
13FD | Reserved to Compaq | 43FD | SUBG3
14FD | Reserved to Compaq | 44FD | MULG2
15FD | Reserved to Compaq | 45FD | MULG3
16FD | Reserved to Compaq | 46FD | DIVG2
17FD | Reserved to Compaq | 47FD | DIVG3
18FD | Reserved to Compaq | 48FD | CVTGB
19FD | Reserved to Compaq | 49FD | CVTGW
1AFD | Reserved to Compaq | 4AFD | CVTGL
1BFD | Reserved to Compaq | 4BFD | CVTRGL
1CFD | Reserved to Compaq | 4CFD | CVTBG
1DFD | Reserved to Compaq | 4DFD | CVTWG
1EFD | Reserved to Compaq | 4EFD | CVTLG
1FFD | Reserved to Compaq | 4FFD | ACBG
20FD | Reserved to Compaq | 50FD | MOVG
21FD | Reserved to Compaq | 51FD | CMPG
22FD | Reserved to Compaq | 52FD | MNEGG
23FD | Reserved to Compaq | 53FD | TSTG
24FD | Reserved to Compaq | 54FD | EMODG
25FD | Reserved to Compaq | 55FD | POLYG
26FD | Reserved to Compaq | 56FD | CVTGH
27FD | Reserved to Compaq | 57FD | Reserved to Compaq
28FD | Reserved to Compaq | 58FD | Reserved to Compaq
29FD | Reserved to Compaq | 59FD | Reserved to Compaq
2AFD | Reserved to Compaq | 5AFD | Reserved to Compaq
2BFD | Reserved to Compaq | 5BFD | Reserved to Compaq
2CFD | Reserved to Compaq | 5CFD | Reserved to Compaq
2DFD | Reserved to Compaq | 5DFD | Reserved to Compaq
2EFD | Reserved to Compaq | 5EFD | Reserved to Compaq
2FFD | Reserved to Compaq | 5FFD | Reserved to Compaq
60FD | ADDH2 | 90FD | Reserved to Compaq
61FD | ADDH3 | 91FD | Reserved to Compaq
62FD | SUBH2 | 92FD | Reserved to Compaq
63FD | SUBH3 | 93FD | Reserved to Compaq
64FD | MULH2 | 94FD | Reserved to Compaq
65FD | MULH3 | 95FD | Reserved to Compaq
66FD | DIVH2 | 96FD | Reserved to Compaq
67FD | DIVH3 | 97FD | Reserved to Compaq
68FD | CVTHB | 98FD | CVTFH
69FD | CVTHW | 99FD | CVTFG
6AFD | CVTHL | 9AFD | Reserved to Compaq
6BFD | CVTRHL | 9BFD | Reserved to Compaq
6CFD | CVTBH | 9CFD | VSTL
6DFD | CVTWH | 9DFD | VSCATL
6EFD | CVTLH | 9EFD | VSTQ
6FFD | ACBH | 9FFD | VSCATQ
70FD | MOVH | A0FD | VVMULL
71FD | CMPH | A1FD | VSMULL
72FD | MNEGH | A2FD | VVMULG
73FD | TSTH | A3FD | VSMULG
74FD | EMODH | A4FD | VVMULF
75FD | POLYH | A5FD | VSMULF
76FD | CVTHG | A6FD | VVMULD
77FD | Reserved to Compaq | A7FD | VSMULD
78FD | Reserved to Compaq | A8FD | VSYNC
79FD | Reserved to Compaq | A9FD | MTVP
7AFD | Reserved to Compaq | AAFD | VVDIVG
7BFD | Reserved to Compaq | ABFD | VSDIVG
7CFD | CLRH, CLRO | ACFD | VVDIVF
7DFD | MOVO | ADFD | VSDIVF
7EFD | MOVAH, MOVAO | AEFD | VVDIVD
7FFD | PUSHAH, PUSHAO | AFFD | VSDIVD
80FD | VVADDL | B0FD | Reserved to Compaq
81FD | VSADDL | B1FD | Reserved to Compaq
82FD | VVADDG | B2FD | Reserved to Compaq
83FD | VSADDG | B3FD | Reserved to Compaq
84FD | VVADDF | B4FD | Reserved to Compaq
85FD | VSADDF | B5FD | Reserved to Compaq
86FD | VVADDD | B6FD | Reserved to Compaq
87FD | VSADDD | B7FD | Reserved to Compaq
88FD | VVSUBL | B8FD | Reserved to Compaq
89FD | VSSUBL | B9FD | Reserved to Compaq
8AFD | VVSUBG | BAFD | Reserved to Compaq
8BFD | VSSUBG | BBFD | Reserved to Compaq
8CFD | VVSUBF | BCFD | Reserved to Compaq
8DFD | VSSUBF | BDFD | Reserved to Compaq
8EFD | VVSUBD | BEFD | Reserved to Compaq
8FFD | VSSUBD | BFFD | Reserved to Compaq
C0FD | VVCMPL | E0FD | VVSRLL
C1FD | VSCMPL | E1FD | VSSRLL
C2FD | VVCMPG | E2FD | Illegal Vector Opcode
C3FD | VSCMPG | E3FD | Illegal Vector Opcode
C4FD | VVCMPF | E4FD | VVSLLL
C5FD | VSCMPF | E5FD | VSSLLL
C6FD | VVCMPD | E6FD | Illegal Vector Opcode
C7FD | VSCMPD | E7FD | Illegal Vector Opcode
C8FD | VVBISL | E8FD | VVXORL
C9FD | VSBISL | E9FD | VSXORL
CAFD | Illegal Vector Opcode | EAFD | Illegal Vector Opcode
CBFD | Illegal Vector Opcode | EBFD | Illegal Vector Opcode
CCFD | VVBICL | ECFD | VVCVT
CDFD | VSBICL | EDFD | IOTA
CEFD | Illegal Vector Opcode | EEFD | VVMERGE
CFFD | Illegal Vector Opcode | EFFD | VSMERGE
D0FD | Reserved to Compaq | F0FD | Reserved to Compaq
D1FD | Reserved to Compaq | F1FD | Reserved to Compaq
D2FD | Reserved to Compaq | F2FD | Reserved to Compaq
D3FD | Reserved to Compaq | F3FD | Reserved to Compaq
D4FD | Reserved to Compaq | F4FD | Reserved to Compaq
D5FD | Reserved to Compaq | F5FD | Reserved to Compaq
D6FD | Reserved to Compaq | F6FD | CVTHF
D7FD | Reserved to Compaq | F7FD | CVTHD
D8FD | Reserved to Compaq | F8FD | Reserved to Compaq
D9FD | Reserved to Compaq | F9FD | Reserved to Compaq
DAFD | Reserved to Compaq | FAFD | Reserved to Compaq
DBFD | Reserved to Compaq | FBFD | Reserved to Compaq
DCFD | Reserved to Compaq | FCFD | Reserved to Compaq
DDFD | Reserved to Compaq | FCFE | Reserved to Compaq
DEFD | Reserved to Compaq | FCFF | Reserved to Compaq
DFFD | Reserved to Compaq | FDFF | BUGL
|  | FEFF | BUGW
|  | FFFF | Reserved for all time

Previous | Next | Contents | Index

| privacy and legal statement |
4515PRO_039.HTML