Ax51 User's Guide

Using Operands and Expressions

Operands are arguments, or expressions, that are specified along with assembler directives or instructions. Assembler directives require operands that are constants or symbols. For example:

VVV               EQU    3
                  DS     10h

Assembler instructions support a wider variety of operands than do directives. Some instructions require no operands and some may require up to 3 operands. Multiple operands are separated by commas. For example:

MOV              R2, #0

The number of operands that are required and their types depend on the instruction or directive that is specified. In the following table, the first four operands can also be expressions. Instruction operands can be classified as one the following types:

Operand TypeDescription
Immediate DataSymbols or constants the are used as an numeric value.
Direct Bit AddressSymbols or constants that reference a bit address.
Program AddressesSymbols or constants that reference a code address.
Direct Data AddressesSymbols or constants that reference a data address.
Indirect AddressesIndirect reference to a memory location, optionally with offset.
Special Assembler SymbolRegister names.