Rev. 1.0, 09/01, page 45 of 904
2.7.1
Register Direct—Rn
The register field of the instruction code specifies an 8-, 16-, or 32-bit general register which
contains the operand. R0H to R7H and R0L to R7L can be specified as 8-bit registers. R0 to R7
and E0 to E7 can be specified as 16-bit registers. ER0 to ER7 can be specified as 32-bit registers.
2.7.2
Register Indirect—@ERn
The register field of the instruction code specifies an address register (ERn) which contains the
address of a memory operand. If the address is a program instruction address, the lower 24 bits are
valid and the upper 8 bits are all assumed to be 0 (H'00).
2.7.3
Register Indirect with Displacement—@(d:16, ERn) or @(d:32, ERn)
A 16-bit or 32-bit displacement contained in the instruction code is added to an address register
(ERn) specified by the register field of the instruction, and the sum gives the address of a memory
operand. A 16-bit displacement is sign-extended when added.
2.7.4
Register Indirect with Post-Increment or Pre-Decrement—@ERn+ or @-ERn
Register Indirect with Post-Increment—@ERn+: The register field of the instruction code
specifies an address register (ERn) which contains the address of a memory operand. After the
operand is accessed, 1, 2, or 4 is added to the address register contents and the sum is stored in the
address register. The value added is 1 for byte access, 2 for word access, and 4 for longword
access. For word or longword transfer instructions, the register value should be even.
Register Indirect with Pre-Decrement—@-ERn: The value 1, 2, or 4 is subtracted from an
address register (ERn) specified by the register field in the instruction code, and the result becomes
the address of a memory operand. The result is also stored in the address register. The value
subtracted is 1 for byte access, 2 for word access, and 4 for longword access. For word or
longword transfer instructions, the register value should be even.
2.7.5
Absolute Address—@aa:8, @aa:16, @aa:24, or @aa:32
The instruction code contains the absolute address of a memory operand. The absolute address
may be 8 bits long (@aa:8), 16 bits long (@aa:16), 24 bits long (@aa:24), or 32 bits long
(@aa:32). Table 2.12 indicates the accessible absolute address ranges.
To access data, the absolute address should be 8 bits (@aa:8), 16 bits (@aa:16), or 32 bits
(@aa:32) long. For an 8-bit absolute address, the upper 24 bits are all assumed to be 1 (H'FFFF).
For a 16-bit absolute address, the upper 16 bits are a sign extension. For a 32-bit absolute address,
the entire address space is accessed.
Содержание H8S/2376 F-ZTAT
Страница 24: ...Rev 1 0 09 01 page xxiv of xliv ...
Страница 38: ...Rev 1 0 09 01 page xxxviii of xliv ...
Страница 44: ...Rev 1 0 09 01 page xliv of xliv ...
Страница 60: ...Rev 1 0 09 01 page 16 of 904 ...
Страница 96: ...Rev 1 0 09 01 page 52 of 904 ...
Страница 116: ...Rev 1 0 09 01 page 72 of 904 ...
Страница 148: ...Rev 1 0 09 01 page 104 of 904 ...
Страница 284: ...Rev 1 0 09 01 page 240 of 904 ...
Страница 422: ...Rev 1 0 09 01 page 378 of 904 ...
Страница 634: ...Rev 1 0 09 01 page 590 of 904 ...
Страница 656: ...Rev 1 0 09 01 page 612 of 904 ...
Страница 668: ...Rev 1 0 09 01 page 624 of 904 ...
Страница 780: ...Rev 1 0 09 01 page 736 of 904 ...
Страница 796: ...Rev 1 0 09 01 page 752 of 904 ...
Страница 806: ...Rev 1 0 09 01 page 762 of 903 ...
Страница 808: ...Rev 1 0 09 01 page 764 of 904 ...
Страница 921: ...Rev 1 0 09 01 page 877 of 904 ø tBRQOD tBRQOD Figure 24 24 External Bus Request Output Timing ...
Страница 938: ...Rev 1 0 09 01 page 894 of 904 ...