Node: H8/500-Regs, Next: H8/500-Addressing, Previous: H8/500-Chars, Up: H8/500 Syntax

### Register Names

You can use the predefined symbols `r0`, `r1`, `r2`, `r3`, `r4`, `r5`, `r6`, and `r7` to refer to the H8/500 registers.

The H8/500 also has these control registers:

`cp`
  code pointer
`dp`
  data pointer
`bp`
  base pointer
`tp`
  stack top pointer
`ep`
  extra pointer
`sr`
  status register
`ccr`
  condition code register

All registers are 16 bits long. To represent 32 bit numbers, use two adjacent registers; for distant memory addresses, use one of the segment pointers (`cp` for the program counter; `dp` for `r0`-`r3`; `ep` for `r4` and `r5`; and `tp` for `r6` and `r7`.