16
CHAPTER 3 REGISTER DESCRIPTIONS
● R14 (Frame Pointer: FP)
• Index register for load/store to memory instructions
[Example: LD @(R14, disp10), Ri]
• Frame pointer for reserve/release of dynamic memory area
[Example: ENTER #u10]
● R15 (Stack Pointer: SP)
• Index register for load/store to memory instructions
[Example: LD @(R15, udisp6), Ri]
• Stack pointer
[Example: LD @R15+, Ri]
• Stack pointer for reserve/release of dynamic memory area
[Example: ENTER #u10]
■ Relation between "R15" and Stack Pointer
The "R15" functions physically as either the system stack pointer (SSP) or user stack pointer (USP) for the
general-purpose registers. When the notation "R15" is used in an instruction, this register will function as
the "USP" if the "S" flag in the condition code register (CCR) section of the program status register (PS) is
set to "1". The R15 register will function as the "SSP" if the "S" flag is set to "0".
Ensure that the S flag value is set to "0" when R15 is recovered from the EIT handler with the RETI
instruction.
■ Initial Value of General-purpose Registers
After a reset, the value of registers "R00" through "R14" are undefined, and the value of "R15" is
"00000000
H
".