130
Rabbit 2000/3000 Microprocessor
Description
Pushes the current Program Counter, PC, onto the stack and then resets the PC to the interrupt vector address
represented by
IIR:v
, where
IIR
is the address of the interrupt table and
v
is the offset into the table. The
address of the vector table can be read and set by the instructions LD A,IIR and LD IIR,A respectively, where
A is the upper nibble of the 16 bit vector table address. The vector table is always on a 100h boundary.
The push is accomplished by first loading the high-order byte of the PC into the memory location with the
address 1 less than the number in the Stack Pointer, SP. Then the low-order byte of the PC is loaded into the
memory location with the address two less than the number in SP. The value in SP is then decremented twice.
The PC is reset by loading it with the address to reset to
v
(any of the addresses 0020, 0030, 0040, 0050, or
0070).
RST
v
Opcode
Instruction
Clocks
Operation
——
D7
DF
E7
EF
FF
RST
v
RST 10
RST 18
RST 20
RST 28
RST 38
8 (2,2,2,2)
8 (2,2,2,2)
8 (2,2,2,2)
8 (2,2,2,2)
8 (2,2,2,2)
8 (2,2,2,2)
(SP - 1) = PC
(high)
; (SP - 2) = PC
(low)
;
SP = SP - 2; PC = Restart Address
{IIR, 0x20}
{IIR, 0x30}
{IIR, 0x40}
{IIR, 0x50}
{IIR, 0x70}
Flags
ALTD
I/O
S
Z
L/V
C
F
R
SP
S
D
-
-
-
-
Содержание 2000
Страница 2: ...ii Rabbit 2000 3000 Microprocessor...
Страница 4: ...iv Rabbit 2000 Microprocessor...
Страница 16: ...12 Rabbit 2000 3000 Microprocessor...
Страница 164: ...160 Instruction Reference Manual...
Страница 172: ...168 Rabbit 2000 3000 Microprocessor...
Страница 174: ...170 Rabbit 2000 3000 Microprocessor...