English
Language : 

PIC17C7XX Datasheet, PDF (225/328 Pages) Microchip Technology – High-Performance 8-Bit CMOS EPROM Microcontrollers with 10-bit A/D
PIC17C7XX
SWAPF
Swap f
Syntax:
[ label ] SWAPF f,d
Operands:
0 ≤ f ≤ 255
d ∈ [0,1]
Operation:
f<3:0> → dest<7:4>;
f<7:4> → dest<3:0>
Status Affected: None
Encoding:
0001 110d ffff ffff
Description:
The upper and lower nibbles of register
'f' are exchanged. If 'd' is 0 the result is
placed in WREG. If 'd' is 1 the result is
placed in register 'f'.
Words:
1
Cycles:
1
Q Cycle Activity:
Q1
Decode
Q2
Read
register 'f'
Q3
Process
Data
Q4
Write to
destination
Example:
SWAPF REG, 0
Before Instruction
REG = 0x53
After Instruction
REG = 0x35
TABLRD
Table Read
Syntax:
[ label ] TABLRD t,i,f
Operands:
0 ≤ f ≤ 255
i ∈ [0,1]
t ∈ [0,1]
Operation:
If t = 1,
TBLATH → f;
If t = 0,
TBLATL → f;
Prog Mem (TBLPTR) → TBLAT;
If i = 1,
TBLPTR + 1 → TBLPTR
If i = 0,
TBLPTR is unchanged
Status Affected: None
Encoding:
1010 10ti ffff ffff
Description:
1. A byte of the table latch (TBLAT)
is moved to register file 'f'.
If t = 1: the high byte is moved;
If t = 0: the low byte is moved
2. Then the contents of the program
memory location pointed to by
the 16-bit Table Pointer
(TBLPTR) is loaded into the
16-bit Table Latch (TBLAT).
3. If i = 1: TBLPTR is incremented;
If i = 0: TBLPTR is not
incremented
Words:
1
Cycles:
2 (3 cycle if f = PCL)
Q Cycle Activity:
Q1
Q2
Decode
Read
register
TBLATH or
TBLATL
No
operation
No
operation
(Table Pointer
on Address
bus)
Q3
Process
Data
No
operation
Q4
Write
register 'f'
No
operation
(OE goes low)
© 1998 Microchip Technology Inc.
DS30289A-page 225