English
Language : 

UPD784938 Datasheet, PDF (693/733 Pages) NEC – 16-Bit Single-Chip Microcontrollers
CHAPTER 29 INSTRUCTION OPERATIONS
(8) 24-bit operation instructions: ADDG, SUBG
Mnemonic
Operands
ADDG
SUBG
rg, rg’
rg, #imm24
WHL, saddrg
rg, rg’
rg, #imm24
WHL, saddrg
Bytes
Operation
2
rg, CY ← rg + rg’
5
rg, CY ← rg + #imm24
3
WHL, CY ← WHL + (saddrg)
2
rg, CY ← rg – rg’
5
rg, CY ← rg – imm24
3
WHL, CY ← WHL – (saddrg)
Flags
S Z AC P/V CY
×××V×
×××V×
×××V×
×××V×
×××V×
×××V×
(9) Multiplication instructions: MULU, MULUW, MULW, DIVUW, DIVUX
Mnemonic
Operands
MULU
r
MULUW
rp
MULW
rp
DIVUW
r
DIVUX
rp
Bytes
2/3
2
2
2/3
2
Operation
AX ← A × r
AX (upper half), rp (lower half) ← AX × rp
AX (upper half), rp (lower half) ← AX × rp
AX (quotient), r (remainder) ← AX ÷ rNote 1
AXDE (quotient), rp (remainder) ← AXDE ÷ rpNote 2
Flags
S Z AC P/V CY
Notes 1. When r = 0, r ← X, AX ← FFFFH
2. When rp = 0, pr ← DE, AXDE ← FFFFFFFFH
(10) Special operation instructions: MACW, MACSW, SACW
Mnemonic
Operands
MACW
byte
MACSW
byte
SACW
[TDE+], [WHL+]
Bytes
Operation
3
AXDE ← (B) × (C) + AXDE, B ← B + 2,
C ← C + 2, byte ← byte – 1
End if(byte = 0 or P/V = 1)
3
AXDE ← (B) × (C) + AXDE, B ← B + 2,
C ← C + 2, byte ← byte – 1
if byte = 0 then End
if P/V = 1 then
if overflow AXDE ← 7FFFFFFFH, End
if underflow AXDE ← 80000000H, End
4
AX ← |(TDE) – (WHL)| + AX,
TDE ← TDE + 2, WHL ← WHL + 2
C ← C – 1 End if(C = 0 or CY = 1)
Flags
S Z AC P/V CY
×××V×
×××V×
×××V×
Preliminary User’s Manual U13987EJ1V0UM00
693