No. 5190-34/35
LC651204N/F/L, LC651202N/F/L
Instruction code
Modified
Mnemonic Operation Description status Notes
D
7D6D5D4D3D2D1D0
flags
Load DPHwith Zero and
DPH← 0 Loads 0 into DPHand the
LDZ data DP
L
with immediate data 1 0 0 0 I3I2I1I01 1
DPL← I3I2I1I
0
immediate data I3I2I1I0 into DPL.
respectively
LHI data
Load DPH with immediate
0 1 0 0 I
3I2I1I0
1 1 DPH← I3I2I1I
0
Loads the immediate data
I3I2I1I
0
data into DPH.
IND Increment DP
L
1 1 1 0 1 1 1 0 1 1 DPL← (DPL) + 1 Increments the contents of DPL. ZF
DED Decrement DP
L
1 1 1 0 1 1 1 1 1 1 DPL← (DPL) – 1 Decrements the contents of DPL. ZF
TAL Transfer AC to DP
L
1 1 1 1 0 1 1 1 1 1 DPL← (AC)
Moves the contents of AC to DPL.
TLA Transfer DPL to AC 1 1 1 0 1 0 0 1 1 1 AC ← (DPL)
Moves the contents of DPL to AC.
ZF
XAH Exchange AC with DPH 0 0 1 0 0 0 1 1 1 1 (AC) ↔ (DPH)
Exchanges the contents of AC
and DP
H
.
XAt t1 t0 Exchanges the contents of AC
XA0
Exchange AC with working
1 1 1 0 0 0 0 0 1 1 (AC) ↔ (A0) and the working register A0, A1,
XA1
register At
1 1 1 0 0 1 0 0 1 1 (AC) ↔ (A1) A2, or A3 specified by t1t0.
XA2 1 1 1 0 1 0 0 0 1 1 (AC) ↔ (A2)
XA3 1 1 1 0 1 1 0 0 1 1 (AC) ↔ (A3)
XHa
Exchange DPH with working
a Exchanges the contents of DP
H
XH0
register Ha
1 1 1 1 1 0 0 0 1 1 (DPH) ↔ (H0) and the working register H0 or H1
XH1 1 1 1 1 1 1 0 0 1 1 (DPH) ↔ (H1) specified by a.
XLa
Exchange DPH with working
a Exchanges the contents of DP
L
XL0
register Ha
1 1 1 1 1 0 0 0 1 1 (DPL) ↔ (L0) and the working register L0 or L1
XL1 1 1 1 1 1 1 0 0 1 1 (DPL) ↔ (L1) specified by a.
SFB flag Set flag bit 0 1 0 1 B3B2B1B01 1 Fn ← 1
Sets the flag specified by B3B
2
B1B0to 1.
Clears the flag specified by B
3
B2B1B0to 0.
RFB flag Reset flag bit 0 0 0 1 B3B2B1B01 1 Fn ← 0
ZF
0 1 1 0 1 P10P9P
8
PC ← P10P9P8P7P6Jumps to the location specified
JMP addr Jumping in the current bank
P
7P6P5P4P3P2P1P0
2 2 P5P4P3P2P1P0by the immediate data P10P
9
P8P7P6P5P4P3P2P1P0.
JPEA
Jumping current page
1 1 1 1 1 0 1 0 1 1 PC
0
to 7← (E, AC)
Jumps to the location given by
modified by E and AC
replacing the lower 8 bits of the
PC with E and AC.
CZP addr
Call subroutine in the zero
1 0 1 1 P3P2P1P01 1
STACK ← (PC) + 1
page
PC10to 6, PC1to 0← 0
Calls a subroutine on page 0.
PC5to 2← P3P2P1P
0
CAL addr Call subroutine 1 0 1 0 1 P10P9P82 2 STACK ← (PC) + 2 Calls a subroutine.
RT Return from subroutine 0 1 1 0 0 0 1 0 1 1 PC ← (STACK) Returns from a subroutine.
RTI Return from interrupt routine 0 0 1 0 0 0 1 0 1 1
PC ← (STACK) Returns from an interrupt
ZF CF
CF, ZF ← CSF, ZSF handling routine.
Specifies a pseudo I/O port
BANK Change bank 1 1 1 1 1 1 0 1 1 1
and changes the bank.
BAt addr Change bank
0 1 1 1 0 0 t
1t0
2 2
PC7to 0← P7P6P5P4Branches to the location on the
P7P6P5P4P3P2P1P
0
P3P2P1P0same page specified by P7to P
0
if ACt = 1 if the bit in AC specified by the
immediate data t1t0 is 1.
BNAt addr Branch on no AC bit
0 0 1 1 0 0 t1t
0
2 2
PC7to 0← P7P6P5P4Branches to the location on the
P7P6P5P4P3P2P1P
0
P3P2P1P0same page specified by P7to P
0
if ACt = 0 if the bit in AC specified by the
immediate data t1t0 is 0.
BMt addr Branch on M bit
0 1 1 1 0 1 t1t
0
2 2
PC7to 0← P7P6P5P4Branches to the location on the
P7P6P5P4P3P2P1P
0
P3P2P1P0same page specified by P7to P
0
if [M(DP, t1t0)] = 1 if the bit in M(DP) specified by
the immediate data t
1t0
is 1.
BNMt addr Branch on no M bit
0 0 1 1 0 1 t
1t0
2 2
PC7to 0← P7P6P5P4Branches to the location on the
P7P6P5P4P3P2P1P
0
P3P2P1P0same page specified by P7to P
0
if [M(DP, t1t0)] = 0 if the bit in M(DP) specified by
the immediate data t
1t0
is 0.
BPt addr Branch on Port bit
0 1 1 1 1 0 t
1t0
2 2
PC7to 0← P7P6P5P4Branches to the location on the
P7P6P5P4P3P2P1P
0
P3P2P1P0same page specified by P7to P
0
if [P(DPL, t1t0)] = 1 if the bit in port P(DPL) specified
by the immediate data t
1t0
is 1.
BNPt addr Branch on no Port bit
0 0 1 1 1 0 t1t
0
2 2
PC7to 0← P7P6P5P4Branches to the location on the
P
7P6P5P4P3P2P1P0
P3P2P1P0same page specified by P7to P
0
if [P(DPL, t1t0)] = 0 if the bit in port P(DPL) specified
by the immediate data t
1t0
is 0.
0 1 1 1 1 0 0 0
PC7to 0← P7P6P5P4Branches to the location on the
BTM addr Branch on timer
P
7P6P5P4P3P2P1P0
P3P2P1P0same page specified by P7to P
0
TMF
2 2
if TMF = 0 if TMF is 1. Also clears TMF.
then TMF ← 0
Instruction group
Data pointer manipulation instructions
Working register manipulation instructions
Memory manipulation
instructions
Jump and subroutine instructionsBranch instructions
Number of bytes
The flags are divided
into four groups, F0
to F3, F4 to F7, F8 to
F11, and F12 to F15.
ZF is set or cleared
according to the 4
bits included in the
specified flags.
Only valid for the
immediately
following JMP, I/O,
or branch instruction.
The mnemonics are
BA0 to BA3,
reflecting the value
of t.
The mnemonics are
BNA0 to BNA3,
reflecting the value
of t.
The mnemonics are
BM0 to BM3,
reflecting the value
of t.
The mnemonics are
BNM0 to BNM3,
reflecting the value
of t.
The mnemonics are
BP0 to BP3,
reflecting the value
of t.
The mnemonics are
BNP0 to BNP3,
reflecting the value
of t.
Number of cycles
Continued from preceding page.
Continued on next page.