Node: SH-Addressing, Previous: SH-Regs, Up: SH Syntax

### Addressing Modes

`as` understands the following addressing modes for the SH. `R` n`` in the following refers to any of the numbered registers, but not the control registers.

`R` n``
  Register direct
`@R` n``
  Register indirect
`@-R` n``
  Register indirect with pre-decrement
`@R` n`+`
  Register indirect with post-increment
`@(`disp`, R` n`)`
  Register indirect with displacement
`@(R0, R` n`)`
  Register indexed
`@(`disp`, GBR)`
  `GBR` offset
`@(R0, GBR)`
  GBR indexed
``addr``
`@(`disp`, PC)`
  PC relative address (for branch or for addressing memory). The `as` implementation allows you to use the simpler form addr anywhere a PC relative address is called for; the alternate form is supported for compatibility with other assemblers.
`#`imm``
  Immediate data