PIC17C75X
MOVFP
Syntax:
Move f to p
MOVLB
Move Literal to low nibble in BSR
[ label ] MOVLB k
0 ≤ k ≤ 15
[label] MOVFP f,p
Syntax:
Operands:
0 ≤ f ≤ 255
0 ≤ p ≤ 31
Operands:
Operation:
Status Affected:
Encoding:
Description:
k → (BSR<3:0>)
None
Operation:
(f) → (p)
Status Affected:
Encoding:
None
1011
1000
uuuu
kkkk
011p
pppp
ffff
ffff
The four bit literal 'k' is loaded in the
Bank Select Register (BSR). Only the
low 4-bits of the Bank Select Register
are affected. The upper half of the BSR
is unchanged. The assembler will
encode the “u” fields as '0'.
Move data from data memory location 'f'
to data memory location 'p'. Location 'f'
can be anywhere in the 256 word data
space (00h to FFh) while 'p' can be 00h
to 1Fh.
Description:
Either ’p' or 'f' can be WREG (a useful
special situation).
Words:
Cycles:
1
1
MOVFPis particularly useful for transfer-
ring a data memory location to a periph-
eral register (such as the transmit buffer
or an I/O port). Both 'f' and 'p' can be
indirectly addressed.
Q Cycle Activity:
Q1
Q2
Q3
Q4
Decode
Read
Process
Data
Write literal
'k' to
literal 'k'
Words:
Cycles:
1
1
BSR<3:0>
MOVLB
5
Example:
Q Cycle Activity:
Q1
Before Instruction
Q2
Q3
Q4
BSR register
=
=
0x22
Decode
Read
register 'f'
Process
Data
Write
register 'p'
After Instruction
BSR register
0x25 (Bank 5)
MOVFP
REG1, REG2
Example:
Before Instruction
REG1
REG2
=
=
0x33,
0x11
After Instruction
REG1
=
=
0x33,
0x33
REG2
DS30264A-page 202
1997 Microchip Technology Inc.