|
The MA-51 8051 Assembler is a comprehensive and powerful
macro assembler,
which is capable of generating both relocatable and absolute object
files. MA-51 includes a macro instruction processor and is fully
compatible with ASM-51.
MA-51 is fully integrated into the RIDE Integrated Development
Environment.
Assembly statements
-
Directives: are used to determine the way the assembler processes
assembly language instructions.
-
Controls: are used to determine the way the assembler generates
the object and listing files. Controls may be used either
on the command line or in the source module(s).
-
Instructions: specify the source code to assemble.
Comments
Comments are used to make a program more readable. They are introduced
with a ; and ignored by the assembler.
Keywords
Keywords are symbols used by the assembler that must not be redefined.
Symbols
Symbols can be defined before assembly instructions, but not before
directives such as $INCLUDE, etc. In the variables segments (data,
bit, xdata, code), symbols can be assigned to any address. A symbol
is equivalent to the numerical value of the address at which it
is allocated.
Labels
A label is a symbol used to mark a particular place in an assembly
program. It may refer to program code, to variable space in internal
data memory, to variable space in external data memory, or to
constant data stored in code space.
Operands
Operands are arguments of instructions or directives. They may
be divided into 3 groups:
Main 'registers'
The register names in the 8051 and its derivatives are pre-defined
and listed below :
-
A: 8-bit accumulator
-
R0-R7: 8-bit general purpose registers
-
DPTR: 16-bit data pointer generally used to address data
in external data memory or program memory
-
DPL: 8-bit register containing the 8 lower bits of DPTR
-
DPH: 8-bit register containing the 8 upper bits of DPTR
-
PC: 16-bit program counter
-
C: carry flag
-
AB: represents the 16-bit A and B register pair
- AR0-AR7: absolute data address of R0-R7 in the current register
bank (RR0-RR7 are also accepted, for compatibility with previous
versions of the assembler).

|