For detailed information on the H8/300 machine instruction set, see H8/300 Series Programming Manual. For information specific to the H8/300H, see H8/300H Series Programming Manual (Renesas).
as
implements all the standard H8/300 opcodes. No additional pseudo-instructions are needed on this family.
Four H8/300 instructions (add
, cmp
, mov
, sub
) are defined with variants using the suffixes .b, .w, and .l to specify the size of a memory operand. as
supports these suffixes, but does not require them; since one of the operands is always a register, as
can deduce the correct size.
For example, since r0
refers to a 16-bit register,
mov r0,@foo
is equivalent to
mov.w r0,@foo
If you use the size suffixes, as
issues a warning when the suffix and the register size do not match.