PIC18F010/020
MOVFF
Move f to f
Syntax:
[label] MOVFF fs,fd
Operands:
0 ≤ fs ≤ 4095
0 ≤ fd ≤ 4095
Operation:
(fs) → fd
Status Affected: None
Encoding:
1st word (source)
2nd word (destin.)
1100
1111
ffff
ffff
ffff
ffff
ffffs
ffffd
Description:
The contents of source register ’fs’
are moved to destination register
’fd’. Location of source ’fs’ can be
anywhere in the 4096 byte data
space (000h to FFFh), and location
of destination ’fd’ can also be any-
where from 000h to FFFh.
Either source or destination can be
WREG (a useful special situation).
MOVFF is particularly useful for
transferring a data memory location
to a peripheral register (such as the
transmit buffer or an I/O port).
The MOVFF instruction cannot use
the PCL, TOSU, TOSH or TOSL as
the destination register.
Words:
2
Cycles:
2 (3)
Q Cycle Activity:
Q1
Q2
Decode
Read
register ’f’
(src)
Decode
No
operation
No dummy
read
Q3
Process
Data
No
operation
Q4
No
operation
Write
register ’f’
(dest)
Example:
MOVFF REG1, REG2
Before Instruction
REG1
=
REG2
=
0x33
0x11
After Instruction
REG1
=
REG2
=
0x33,
0x33
MOVLB
Move literal to low nibble in BSR
Syntax:
[ label ] MOVLB k
Operands:
0 ≤ k ≤ 255
Operation:
k → BSR
Status Affected: None
Encoding:
0000 0001 kkkk kkkk
Description:
The 8-bit literal ’k’ is loaded into
the Bank Select Register (BSR).
Words:
1
Cycles:
1
Q Cycle Activity:
Q1
Q2
Decode
Read literal
’k’
Q3
Process
Data
Q4
Write
literal ’k’ to
BSR
Example:
MOVLB 0x01
Before Instruction
BSR register = 0x0F
After Instruction
BSR register = 0x01
DS41142A-page 120
Preliminary
2001 Microchip Technology Inc.