hpc36164 National Semiconductor Corporation, hpc36164 Datasheet - Page 31

no-image

hpc36164

Manufacturer Part Number
hpc36164
Description
High-performance Microcontroller With A/d
Manufacturer
National Semiconductor Corporation
Datasheet
ARITHMETIC INSTRUCTIONS
MEMORY MODIFY INSTRUCTIONS
HPC46164 CPU
Accumulator (A) Register
The 16-bit A register is the source and destination register
for most I O arithmetic logic and data memory access op-
erations
Address (B and X) Registers
The 16-bit B and X registers can be used for indirect ad-
dressing They can automatically count up or down to se-
quence through data memory
Boundary (K) Register
The 16-bit K register is used to set limits in repetitive loops
of code as register B sequences through data memory
Stack Pointer (SP) Register
The 16-bit SP register is the pointer that addresses the
stack The SP register is incremented by two for each push
or call and decremented by two for each pop or return The
stack can be placed anywhere in user memory and be as
deep as the available memory permits
Program (PC) Register
The 16-bit PC register addresses program memory
Addressing Modes
ADDRESSING MODES ACCUMULATOR AS
DESTINATION
Register Indirect
This is the ‘‘normal’’ mode of addressing for the HPC46164
(instructions are single-byte) The operand is the memory
addressed by the B register (or X register for some instruc-
tions)
Direct
The instruction contains an 8-bit or 16-bit address field that
directly points to the memory for the operand
Indirect
The instruction contains an 8-bit address field The contents
of the WORD addressed points to the memory for the oper-
and
HPC Instruction Set Description
Mnemonic
ADD
ADC
ADDS
DADC
SUBC
DSUBC
MULT
DIV
DIVD
IFEQ
IFGT
AND
OR
XOR
INC
DECSZ
(Continued)
Add
Add with carry
Add short imm8
Decimal add with carry
Subtract with carry
Decimal subtract w carry
Multiply (unsigned)
Divide (unsigned)
Divide Double Word (unsigned)
If equal
If greater than
Logical and
Logical or
Logical exclusive-or
Increment
Decrement skip if 0
Description
31
Indexed
The instruction contains an 8-bit address field and an 8- or
16-bit displacement field The contents of the WORD ad-
dressed is added to the displacement to get the address of
the operand
Immediate
The instruction contains an 8-bit or 16-bit immediate field
that is used as the operand
Register Indirect (Auto Increment and Decrement)
The operand is the memory addressed by the X register
This mode automatically increments or decrements the X
register (by 1 for bytes and by 2 for words)
Register Indirect (Auto Increment and Decrement)
with Conditional Skip
The operand is the memory addressed by the B register
This mode automatically increments or decrements the B
register (by 1 for bytes and by 2 for words) The B register is
then compared with the K register A skip condition is gener-
ated if B goes past K
ADDRESSING MODES DIRECT MEMORY AS
DESTINATION
Direct Memory to Direct Memory
The instruction contains two 8- or 16-bit address fields One
field directly points to the source operand and the other field
directly points to the destination operand
Immediate to Direct Memory
The instruction contains an 8- or 16-bit address field and an
8- or 16-bit immediate field The immediate field is the oper-
and and the direct field is the destination
Double Register Indirect Using the B and X Registers
Used only with Reset Set and IF bit instructions a specific
bit within the 64 kbyte address range is addressed using the
B and X registers The address of a byte of memory is
formed by adding the contents of the B register to the most
significant 13 bits of the X register The specific bit to be
modified or tested within the byte of memory is selected
using the least significant 3 bits of register X
MA
MA
A
MA
MA
MA
MA MemI
MA MemI
X
Compare MA
Compare MA
MA and MemI
MA or MemI
MA xor MemI
Mem
Mem
a
a
a
a
b
b
imm8
MA MemI
MemI
MemI
b
MemI
MemI
MemI
a
1
1
x
x
x
x
x
a
a
x
a
a
x
x
Mem Skip next if Mem
C
C
C
A
C
x
Mem
x
MA
MA rem
x
x
x
x
MA
MemI Do next if equal
MemI Do next if MA
MA
MA
MA
MA rem
MA
MA (Decimal)
MA
carry
MA (Decimal)
X 0
Action
carry
x
x
x
x
carry
carry
X 0
x
K 0
C
X 0
x
x
x
x
C
x
K 0
l
C
e
C
C
carry
carry
MemI
K Carry
0
x
x
x
C
C
x
C
C

Related parts for hpc36164