550
CHAPTER 28 INSTRUCTION OPERATION
User’s Manual U12697EJ3V0UM
(20) String instructions: MOVTBLW, MOVM, XCHM, MOVBK, XCHBK, CMPME, CMPMNE,
CMPMC, CMPMNC, CMPBKE, CMPBKNE, CMPBKC, CMPBKNC
Mnemonic
Operand
Bytes
Operation
Flag
S
Z
AC P/V CY
MOVTBLW
!addr8, byte
4
(addr8 + 2)
←
(addr8), byte
←
byte – 1,
addr8
←
addr8 – 2 End if byte = 0
MOVM
[TDE+], A
2
(TDE)
←
A, TDE
←
TDE + 1, C
←
C – 1 End if C = 0
[TDE–], A
2
(TDE)
←
A, TDE
←
TDE – 1, C
←
C – 1 End if C = 0
XCHM
[TDE+], A
2
(TDE)
↔
A, TDE
←
TDE + 1, C
←
C – 1 End if C = 0
[TDE–], A
2
(TDE)
↔
A, TDE
←
TDE – 1, C
←
C – 1 End if C = 0
MOVBK
[TDE+], [WHL+]
2
(TDE)
←
(WHL), TDE
←
TDE + 1,
WHL
←
WHL + 1, C
←
C –1 End if C = 0
[TDE–], [WHL–]
2
(TDE)
←
(WHL), TDE
←
TDE – 1,
WHL
←
WHL – 1, C
←
C –1 End if C = 0
XCHBK
[TDE+], [WHL+]
2
(TDE)
↔
(WHL), TDE
←
TDE + 1,
WHL
←
WHL + 1, C
←
C –1 End if C = 0
[TDE–], [WHL–]
2
(TDE)
↔
(WHL), TDE
←
TDE – 1,
WHL
←
WHL – 1, C
←
C –1 End if C = 0
CMPME
[TDE+], A
2
(TDE) – A, TDE
←
TDE + 1, C
←
C – 1 End if C = 0 or Z = 0
×
×
×
V
×
[TDE–], A
2
(TDE) – A, TDE
←
TDE – 1, C
←
C – 1 End if C = 0 or Z = 0
×
×
×
V
×
CMPMNE
[TDE+], A
2
(TDE) – A, TDE
←
TDE + 1, C
←
C – 1 End if C = 0 or Z = 1
×
×
×
V
×
[TDE–], A
2
(TDE) – A, TDE
←
TDE – 1, C
←
C – 1 End if C = 0 or Z = 1
×
×
×
V
×
CMPMC
[TDE+], A
2
(TDE) – A, TDE
←
TDE + 1, C
←
C – 1 End if C = 0 or CY = 0
×
×
×
V
×
[TDE–], A
2
(TDE) – A, TDE
←
TDE – 1, C
←
C – 1 End if C = 0 or CY = 0
×
×
×
V
×
CMPMNC
[TDE+], A
2
(TDE) – A, TDE
←
TDE + 1, C
←
C – 1 End if C = 0 or CY = 1
×
×
×
V
×
[TDE–], A
2
(TDE) – A, TDE
←
TDE – 1, C
←
C – 1 End if C = 0 or CY = 1
×
×
×
V
×
CMPBKE
[TDE+], [WHL+]
2
(TDE) – (WHL), TDE
←
TDE + 1,
×
×
×
V
×
WHL
←
WHL + 1, C
←
C –1 End if C = 0 or Z = 0
[TDE–], [WHL–]
2
(TDE) – (WHL), TDE
←
TDE – 1,
×
×
×
V
×
WHL
←
WHL – 1, C
←
C –1 End if C = 0 or Z = 0
CMPBKNE
[TDE+], [WHL+]
2
(TDE) – (WHL), TDE
←
TDE + 1,
×
×
×
V
×
WHL
←
WHL + 1, C
←
C –1 End if C = 0 or Z = 1
[TDE–], [WHL–]
2
(TDE) – (WHL), TDE
←
TDE – 1,
×
×
×
V
×
WHL
←
WHL – 1, C
←
C –1 End if C = 0 or Z = 1
CMPBKC
[TDE+], [WHL+]
2
(TDE) – (WHL), TDE
←
TDE + 1,
×
×
×
V
×
WHL
←
WHL + 1, C
←
C –1 End if C = 0 or CY = 0
[TDE–], [WHL–]
2
(TDE) – (WHL), TDE
←
TDE – 1,
×
×
×
V
×
WHL
←
WHL – 1, C
←
C –1 End if C = 0 or CY = 0
CMPBKNC
[TDE+], [WHL+]
2
(TDE) – (WHL), TDE
←
TDE + 1,
×
×
×
V
×
WHL
←
WHL + 1, C
←
C –1 End if C = 0 or CY = 1
[TDE–], [WHL–]
2
(TDE) – (WHL), TDE
←
TDE – 1,
×
×
×
V
×
WHL
←
WHL – 1, C
←
C –1 End if C = 0 or CY = 1