
HPC Instruction Set Description
Mnemonic
Description
Action
ARITHMETIC INSTRUCTIONS
ADD
Add
MAaMemI
xMA
carry
xC
ADDS
Add short imm8
MAaimm8
xMA
carry
xC
ADC
Add with carry
MAaMemIaC
xMA
carry
xC
DADC
Decimal add with carry
MAaMemIaC
xMA (Decimal)
carry
xC
SUBC
Subtract with carry
MAbMemIaC
xMA
carry
xC
DSUBC
Decimal subtract wcarry
MAbMemIaC
xMA (Decimal)
carry
xC
MULT
Multiply (unsigned)
MA MemI
xMAX 0xK 0xC
DIV
Divide (unsigned)
MAMemI
xMA rem xX 0xK 0x C
DIVD
Divide Double Word (unsigned)
(x8 MA)MemI
xMA remxX 0xK
carry
xC
IFEQ
If equal
Compare MA
MemI Do next if equal
IFGT
If greater than
Compare MA
MemI Do next if MA
xMemI
AND
Logical and
MA and MemI
xMA
OR
Logical or
MA or MemI
xMA
XOR
Logical exclusive-or
MA xor MemI
xMA
MEMORY MODIFY INSTRUCTIONS
INC
Increment
Mem a 1
xMem
DECSZ
Decrement skip if 0
Mem b1
xMem Skip next if Mem e 0
BIT INSTRUCTIONS
SBIT
Set bit
1
xMembit (bit is 0 to 7 immediate)
RBIT
Reset bit
0
xMembit
IFBIT
If bit
If Membit is true do next instr
MEMORY TRANSFER INSTRUCTIONS
LD
Load
MemI
xMA
Load incrdecr X
Mem(X)
xA X g1 (or 2)xX
ST
Store to Memory
MA
xMem
X
Exchange
A
Mem Mem
Mem
Exchange incrdecr X
A
Mem(X) X g1 (or 2)
xX
PUSH
Push Memory to Stack
W
xW(SP) SPa2xSP
POP
Pop Stack to Memory
SPb2
xSP W(SP)xW
LDS
Load A incrdecr B
Mem(B)
xA B g1 (or 2)xB
Skip on condition
Skip next if B greaterless than K
XS
Exchange incrdecr B
Mem(B)
ABg1 (or 2)
xB
Skip on condition
Skip next if B greaterless than K
REGISTER LOAD IMMEDIATE INSTRUCTIONS
LD A
Load A immediate
imm
xA
LD B
Load B immediate
imm
xB
LD K
Load K immediate
imm
xK
LD X
Load X immediate
imm
xX
LD BK
Load B and K immediate
imm
xBimmxK
ACCUMULATOR AND C INSTRUCTIONS
CLR A
Clear A
0
xA
INC A
Increment A
A a 1
xA
DEC A
Decrement A
A b 1
xA
COMP A
Complement A
1’s complement of A
xA
SWAP A
Swap nibbles of A
A1512
wA118wA74
A30
RRC A
Rotate A right thru C
C
xA15 x
xA0xC
RLC A
Rotate A left thru C
C
wA15 w
wA0wC
SHR A
Shift A right
0
xA15x
xA0xC
SHL A
Shift A left
C
wA15w
wA0w0
SC
Set C
1
xC
RC
Reset C
0
xC
IFC
IF C
Do next if C e 1
IFNC
IF not C
Do next if C e 0
24