Go to the first, previous, next, last section, table of contents.
This syntax for the Motorola 680x0 was developed at MIT.
The 680x0 version of as
uses instructions names and
syntax compatible with the Sun assembler. Intervening periods are
ignored; for example, `movl' is equivalent to `mov.l'.
In the following table apc stands for any of the address registers
(`%a0' through `%a7'), the program counter (`%pc'), the
zero-address relative to the program counter (`%zpc'), a suppressed
address register (`%za0' through `%za7'), or it may be omitted
entirely. The use of size means one of `w' or `l', and
it may be omitted, along with the leading colon, unless a scale is also
specified. The use of scale means one of `1', `2',
`4', or `8', and it may always be omitted along with the
leading colon.
The following addressing modes are understood:
- Immediate
- `#number'
- Data Register
- `%d0' through `%d7'
- Address Register
- `%a0' through `%a7'
`%a7' is also known as `%sp', i.e. the Stack Pointer. %a6
is also known as `%fp', the Frame Pointer.
- Address Register Indirect
- `%a0@' through `%a7@'
- Address Register Postincrement
- `%a0@+' through `%a7@+'
- Address Register Predecrement
- `%a0@-' through `%a7@-'
- Indirect Plus Offset
- `apc@(number)'
- Index
- `apc@(number,register:size:scale)'
The number may be omitted.
- Postindex
- `apc@(number)@(onumber,register:size:scale)'
The onumber or the register, but not both, may be omitted.
- Preindex
- `apc@(number,register:size:scale)@(onumber)'
The number may be omitted. Omitting the register produces
the Postindex addressing mode.
- Absolute
- `symbol', or `digits', optionally followed by
`:b', `:w', or `:l'.
Go to the first, previous, next, last section, table of contents.