Chapter 2. Rabbit Processor Registers
The registers of the Rabbit family of microprocessors can be divided into two categories: processor registers
and I/O registers. That last category can be divided further: parallel port registers, serial port registers,
memory control registers, timer registers, etc. Information on I/O registers can be found in the Rabbit chip
manuals and in the Dynamic C help file, accessible by selecting "I/O Registers" from the help menu.
The registers discussed in this chapter are the processor registers. These are the registers that are used in
the Rabbit instruction set.
2.1 Rabbit 2000/3000 Processor Registers
The Rabbit 2000 and 3000 microprocessors have identical processor register sets. The following table provides
details.
Table 1. Rabbit 2000/3000 Register Set
Accumulators
|
|
|
|
Flags1
|
|
|
|
General Purpose
|
|
|
B´, C´, D´, E´, H´, L´ BC´, DE´
|
Index
|
|
|
|
Stack Pointer
|
|
|
|
Program Counter
|
|
|
|
Xmem Program Counter
|
|
|
|
Interrupt Priority
|
|
|
|
Internal Interrupt
|
|
|
|
External Interrupt
|
|
|
|
1
S=Sign, Z=Zero, LV=Logical/Overflow, C=Carry. Bits marked "x" are reserved for future use.
|
Flag Bits
2.2 Rabbit 4000 Processor Registers
The Rabbit 4000 has a expanded register set over the previous two versions of the Rabbit chip.
.
Table 2. Rabbit 4000 Register Set
Accumulators
|
A
|
HL
|
|
A´, HL´
|
Flags1
|
F
|
|
|
F´
|
General Purpose
|
B, C, D, E, H, L
|
BC, DE, JK
|
BCDE, JKHL
|
B´, C´, D´, E´, H´, L´ BC´, DE´, JK´ BCDE´, JKHL´
|
Index
|
|
IX, IY
|
PW, PX, PY, PZ
|
PW´, PX´, PY´, PZ´
|
Stack Pointer
|
|
SP
|
|
None
|
Program Counter
|
|
PC
|
|
None
|
Xmem Program Counter
|
XPC
|
XPC (low 12 bits valid)
|
|
None
|
Interrupt Priority
|
IP
|
|
|
None
|
Internal Interrupt
|
IIR
|
SP
|
|
None
|
External Interrupt
|
EIR
|
PC
|
|
None
|
System/User Mode
|
SU
|
|
|
None
|
Handle Table Register
|
HTR
|
|
|
None
|
1
S=Sign, Z=Zero, LV=Logical/Overflow, C=Carry. Bits marked "x" are reserved for future use.
|
Flag Bits