INSTRUCTION SET S3C84E5/C84E9/P84E9
6-54
LDCD/LDED Load Memory and Decrement
LDCD dst,src
LDED dst,src
Operation: dst src
rr rr 1
These instructions are used for user stacks or block transfers of data from program or data memory
to the register file. The address of the memory location is specified by a working register pair. The
contents of the source location are loaded into the destination location. The memory address is then
decremented. The contents of the source are unaffected.
LDCD refers to program memory and LDED refers to external data memory. The assembler
makes "Irr" an even number for program memory and an odd number for data memory.
Flags: No flags are affected.
Format:
Bytes Cycles Opcode
(Hex) Addr Mode
dst src
opc dst | src 2 10 E2 r Irr
Examples: Given: R6 = 10H, R7 = 33H, R8 = 12H, program memory location 1033H = 0CDH, and
external data memory location 1033H = 0DDH:
LDCD R8,@RR6 ; 0CDH (contents of program memory location 1033H) is
loaded
; into R8 and RR6 is decremented by one;
; R8 = 0CDH, R6 = 10H, R7 = 32H (RR6 RR6 1)
LDED R8,@RR6 ; 0DDH (contents of data memory location 1033H) is
loaded
; into R8 and RR6 is decremented by one
(RR6 RR6 1);
; R8 = 0DDH, R6 = 10H, R7 = 32H
NOTE: LDED instruction can be used to read/write the data of 64-Kbyte data memory.