| Table 1.17 VAX register modes. Specifier in hexadecimal. |
|
| Mode | | |
| Short Literal | | The literal value is contained in bits 0 through 5 of the operand specifier. |
| Index | | The effective address of the operand is formed by first calculating the effective address of the array base, and then adding the value of the index register multiplied by the size of each array element. |
| Register | | The register contains the operand. |
| Register Deferred | | The register contains the address of the operand. |
| Autodecrement | | Register is decremented by the size of the operand in bytes and then used as the address of the operand. |
| Autoincrement | | Register is used as the address of the operand and then incremented by the size of the operand in bytes. |
| Autoincrement Deferred | | Address in register is a pointer to the effective address of the operand. Register is incremented by 4 after being used to access the effective address. |
| Byte Displacement | | Displacement is sign-extended to 32 bits and added to the register to form the effective address. |
| Byte Displacement Deferred | | Displacement is sign-extended to 32 bits and added to the register to form a pointer to the effective address. |
| Half-Word (16b) Displacement | | Displacement is sign-extended to 32 bits and added to the register to form the effective address. |
| Half-Word Displacement Deferred | | Displacement is sign-extended to 32 bits and added to the register to form a pointer to the effective address. |
| Long Displacement | | Displacement is added to the register to form the effective address. |
| Long Displacement Deferred | | Displacement is added to the register to form a pointer to the effective address. |