![background image](http://html.mh-extra.com/html/hitachi/h8-300h-series/h8-300h-series_programming-manual_140474103.webp)
2.2.28 (1) EEPMOV (B)
EEPMOV (MOVe data to EEPROM)
Block Data Transfer
Operation
if R4L
≠
0 then
repeat
@ER5+
→
@ER6+
R4L – 1
→
R4L
until R4L = 0
else next;
Assembly-Language Format
EEPMOV.B
Operand Size
—
Condition Code
H: Previous value remains unchanged.
N: Previous value remains unchanged.
Z:
Previous value remains unchanged.
V: Previous value remains unchanged.
C: Previous value remains unchanged.
I
UI
H
U
N
Z
V
C
—
—
—
—
—
—
—
—
Description
This instruction performs a block memory transfer. It moves data from the memory location
specified in ER5 to the memory location specified in ER6, increments ER5 and ER6, decrements
R4L, and repeats these operations until R4L reaches zero. Execution then proceeds to the next
instruction. No interrupts are detected while the block transfer is in progress. When the EEPMOV
instruction ends, R4L contains 0, and ER5 and ER6 contain the last transfer a 1. The data
transfer is performed a byte at a time, with R4L indicating the number of bytes to be transferred.
The byte symbol in the assembly-language format designates the size of R4L (and limits the
maximum number of bytes that can be transferred to 255).
Operand Format and Number of States Required for Execution
Note:
*
n is the initial value of R4L. Although n bytes of data are transferred, memory is accessed
2(n + 1) times, requiring 4(n + 1) states. (n = 0, 1, 2, …, 255).
Notes
This instruction first reads the memory locations indicated by ER5 and ER6, then performs the
data transfer. The number of states required for execution differs from the H8/300 CPU.
Instruction Format
1st byte
2nd byte
3rd byte
4th byte
—
EEPMOV.B
7
B
5
C
5
9
8
F
8+4n
*
No. of
States
Addressing
Mode
Mnemonic
Operands
95