71M6403
Electronic Trip Unit
SEPTEMBER 2006
Page: 18 of 75
©
2006 TERIDIAN Semiconductor Corporation
REV 1.0
Accumulator (ACC, A):
ACC is the accumulator register. Most instructions use the accumulator to hold the operand. The
mnemonics for accumulator-specific instructions refer to the accumulator as “A”, not ACC.
B Register:
The B register is used during multiply and divide instructions. It can also be used as a scratch-pad register to hold
temporary data.
Program Status Word (PSW):
MSB
LSB
CV AC F0 RS1 RS OV - P
Table 7: PSW Register Flags
Bit
Symbol
Function
PSW.7 CV
Carry
flag
PSW.6
AC
Auxiliary Carry flag for BCD operations
PSW.5 F0
General purpose Flag 0 available for user.
Not to be confused with the F0 flag
in the CE STATUS register.
PSW.4 RS1
PSW.3 RS0
Register bank select control bits. The contents of RS1 and RS0 select the working
register bank:
RS1/RS0
Bank selected
Location
00
Bank 0
(0x00 – 0x07)
01
Bank 1
(0x08 – 0x0F)
10
Bank 2
(0x10 – 0x17)
11
Bank 3
(0x18 – 0x1F)
PSW.2 OV
Overflow
flag
PSW.1
-
User defined flag
PSW.0
P
Parity flag, affected by hardware to indicate odd / even number of “one” bits in the
Accumulator, i.e. even parity.
Table 8: PSW bit functions
Stack Pointer (SP):
The stack pointer is a 1-byte register initialized to 0x07 after reset. This register is incremented before
PUSH and CALL instructions, causing the stack to begin at location 0x08.
Data Pointer:
The data pointer (DPTR) is 2 bytes wide. The lower part is DPL, and the highest is DPH. It can be loaded as a 2-
byte register (MOV DPTR,#data16) or as two registers (e.g. MOV DPL,#data8). It is generally used to access external code or
data space (e.g. MOVC A,@A+DPTR or MOVX A,@DPTR respectively).
Program Counter:
The program counter (PC) is 2 bytes wide initialized to 0x0000 after reset. This register is incremented
during the fetching operation code or when operating on data from program memory.
electronic components distributor