Contents|Index|Previous|Next

H8/500 Dependent Features

See the following documentation for the Hitachi H8/500 architecture’s features and options for the assembler.

Options for H8/500

Syntax for H8/500

Special Characters for H8/500

Register Names for H8/500

Addressing Modes for H8/500

Floating Point for H8/500

Machine Directives for H8/500

Opcodes for H8/500

Options for H8/500

as has no additional command-line options for the Hitachi H8/500 family.

Syntax for H8/500

The following documentation refers to the syntax for the Hitachi H8/500.

Special Characters for H8/500

! is the line comment character.

; can be used instead of a newline to separate statements.

Since $ has no special meaning, you may use it in symbol names.

Register Names for H8/500

You can use the predefined symbols r0, r1, r2, r3, r4, r5, r6, and r7 to refer to the H8/500 registers.

The H8/500 also has the following control registers.

cp
code pointer

dp
data pointer

bp
base pointer

tp
stack top pointer

ep
extra pointer

sr
status register

ccr
condition code register

All registers are 16 bits long. To represent 32 bit numbers, use two adjacent registers; for distant memory addresses, use one of the segment pointers (cp for the program counter; dp for r0–r3; ep for r4 and r5; and tp for r6 and r7.

Addressing Modes for H8/500

as understands the following addressing modes for the H8/500:

Rn
Register direct.

@Rn
Register indirect.

@(d:8, Rn)
Register indirect with 8 bit signed displacement.

@(d:16, Rn)
Register indirect with 16 bit signed displacement.

@-Rn
Register indirect with pre-decrement.

@Rn+
Register indirect with post-increment.

@aa:8
8 bit absolute address.

@aa:16
16 bit absolute address.

#xx:8
8 bit immediate.

#xx:16
16 bit immediate.

Floating Point for H8/500

The H8/500 family has no hardware floating point, but the .float directive generates IEEE floating-point numbers for compatibility with other development tools.

Machine Directives for H8/500

as has no machine-dependent directives for the H8/500. However, on this platform the .int and .word directives generate 16-bit numbers.

Opcodes for H8/500

For detailed information on the H8/500 machine instruction set, see H8/500 Series Programming Manual (Hitachi M21T001).

as implements all the standard H8/500 opcodes. No additional pseudo-instructions are needed on this family.