73/317
4 - Architecture of the ST7 core
The last mode, called inherent, means that the data involved in the instruction does not need
to be designated by an address, such as the instruction that increments the accumulator.
The many indexed and indirect modes available are useful for translating programs written in
C language, since these programs frequently use complex data structures.
4.3.3 Instruction set
The instruction set of the ST7 includes many instructions. They can be sorted in different
ways. Here is a grouping by number of addressing modes available. This kind of sorting may
seem arbitrary, but there are actually groups of instructions that have a common function and
also the same set of addressing modes.
Table 2.
Table of the number of addressing modes versus the instruction types.
Type of instruction
No
operand
(system)
Multipli-
cation and
branch
(relative)
Push and
pop
Load
memory
with
index
Load and
compare
index
Single
operand
arithmetic
and test
Load
memory
with
accumulat
or and
jump long
Two-
operand
arithmetic
1
(inherent)
2 4 9 10111415
HALT
IRET
NOP
RCF
RET
RIM
RSP
SCF
SIM
TRAP
WFI
MUL
BRES
BSET
BTJF
BTJT
CALLR
JR*
POP
PUSH
LD mem,
X
LD mem,
Y
CP X,
LD X,
CP Y,
LD Y,
CLR
CPL
DEC
INC
NEG
RLC
RRC
SLA
SLL
SRA
SRL
SWAP
TNZ
CALL
JP
LD mem,
A
ADC
ADD
AND
BCP
CP A,
LD A,
OR
SBC
SUB
XOR