English
Language : 

PIC18F2331_07 Datasheet, PDF (318/400 Pages) Microchip Technology – 28/40/44-Pin Enhanced Flash Microcontrollers with nanoWatt Technology, High Performance PWM and A/D
PIC18F2331/2431/4331/4431
MULLW
Syntax:
Operands:
Operation:
Status Affected:
Encoding:
Description:
Words:
Cycles:
Q Cycle Activity:
Q1
Decode
Multiply Literal with W
[ label ] MULLW k
0 ≤ k ≤ 255
(W) x k → PRODH:PRODL
None
0000 1101 kkkk kkkk
An unsigned multiplication is carried
out between the contents of W and
the 8-bit literal ‘k’. The 16-bit result is
placed in PRODH:PRODL register
pair. PRODH contains the high byte.
W is unchanged.
None of the Status flags are affected.
Note that neither Overflow nor Carry
is possible in this operation. A Zero
result is possible but not detected.
1
1
Q2
Read
literal ‘k’
Q3
Process
Data
Q4
Write
registers
PRODH:
PRODL
Example:
MULLW 0xC4
Before Instruction
W
=
PRODH
=
PRODL
=
0xE2
?
?
After Instruction
W
PRODH
PRODL
= 0xE2
= 0xAD
= 0x08
MULWF
Syntax:
Operands:
Operation:
Status Affected:
Encoding:
Description:
Words:
Cycles:
Q Cycle Activity:
Q1
Decode
Multiply W with f
[ label ] MULWF f [,a]
0 ≤ f ≤ 255
a ∈ [0,1]
(W) x (f) → PRODH:PRODL
None
0000 001a ffff ffff
An unsigned multiplication is carried
out between the contents of W and
the register file location ‘f’. The 16-bit
result is stored in the
PRODH:PRODL register pair.
PRODH contains the high byte.
Both W and ‘f’ are unchanged.
None of the Status flags are affected.
Note that neither Overflow nor Carry
is possible in this operation. A Zero
result is possible but not detected. If
‘a’ is ‘0’, the Access Bank will be
selected, overriding the BSR value. If
‘a’= 1, then the bank will be selected
as per the BSR value (default).
1
1
Q2
Read
register ‘f’
Q3
Process
Data
Q4
Write
registers
PRODH:
PRODL
Example:
MULWF REG
Before Instruction
W
=
REG
=
PRODH
=
PRODL
=
0xC4
0xB5
?
?
After Instruction
W
REG
PRODH
PRODL
= 0xC4
= 0xB5
= 0x8A
= 0x94
DS39616C-page 316
Preliminary
© 2007 Microchip Technology Inc.