2.3
CPU Registers
2
The F
MC-16LX registers are divided into special registers inside CPU and general-
purpose registers on memory. The former is dedicated hardware inside the CPU, and
its use is limited because of the CPU architecture. The latter shares CPU address
spaces with RAM. A general-purpose register can be accessed without specifying an
address, and a user can specify the use of a general-purpose register, which is the
same as for memory spaces.
I Dedicated registers
2
The F
MC-16LX has the following 11 types of dedicated registers:
•
Accumulator (A = AH: AL): Two 16-bit accumulators (used as single 32-bit accumulator)
•
User stack pointer (USP): 16-bit pointer pointing to user stack area
•
System stack pointer (SSP): 16-bit pointer pointing to system stack area
•
Processor status (PS): 16-bit register indicating system status
•
Program counter: 16-bit register containing a program address
•
Program bank register: 8-bit register indicating a PC space
•
Data bank register: 8-bit register indicating a DT space
•
User stack bank register (USB): 8-bit register indicating a user stack space
•
System stack bank register (SSB): 8-bit register indicating a system stack space
•
Additional bank register (ADB): 8-bit register indicating an AD space
•
Direct page register (DPR): 8-bit register indicating a direct page
Figure 2.3-1 "Configuration of dedicated registers" shows the configuration of the dedicated
registers.
Figure 2.3-1 Configuration of dedicated registers
AH
AL
USP
SSP
PS
PC
16 bits
32 bits
Accumulator
User stack pointer
System stack pointer
Processor status
Program counter
DPR
Direct page register
PCB
Program bank register
DTB
Data bank register
USB
User stack bank register
SSB
System stack bank register
ADB
Additional data bank register
8 bits
CHAPTER 2 CPU
27