2.5 Instruction Set
The H8/300L Series can use a total of 55 instructions, which are grouped by function in table 2-3.
Table 2-3 Instruction Set
Function
Instructions
Number
Data transfer
MOV, PUSH
*
1
, POP
*
1
1
Arithmetic operations
ADD, SUB, ADDX, SUBX, INC, DEC, ADDS,
14
SUBS, DAA, DAS, MULXU, DIVXU, CMP, NEG
Logic operations
AND, OR, XOR, NOT
4
Shift
SHAL, SHAR, SHLL, SHLR, ROTL, ROTR,
8
ROTXL, ROTXR
Bit manipulation
BSET, BCLR, BNOT, BTST, BAND, BIAND, BOR,
14
BIOR, BXOR, BIXOR, BLD, BILD, BST, BIST
Branch
Bcc
*
2
, JMP, BSR, JSR, RTS
5
System control
RTE, SLEEP, LDC, STC, ANDC, ORC, XORC, NOP
8
Block data transfer
EEPMOV
1
Total: 55
Notes: 1. PUSH Rn is equivalent to MOV.W Rn, @–SP.
POP Rn is equivalent to MOV.W @SP+, Rn. The same applies to the machine language.
2. Bcc is a conditional branch instruction in which cc represents a condition code.
The following sections give a concise summary of the instructions in each category, and indicate the
bit patterns of their object code. The notation used is defined next.
26