Microchip Technology MA160014 Data Sheet

Page of 560
 2010-2012 Microchip Technology Inc.
DS41412F-page 375
PIC18(L)F2X/4XK22
FIGURE 25-1:
GENERAL FORMAT FOR INSTRUCTIONS    
Byte-oriented file register operations
15                  10      9     8   7                               0
d = 0 for result destination to be WREG register 
OPCODE     d      a              f (FILE #)
d = 1 for result destination to be file register (f)
a = 0 to force Access Bank 
Bit-oriented file register operations
15          12 11          9  8   7                                0
OPCODE   b (BIT #)   a        f (FILE #)
b = 3-bit position of bit in file register (f) 
Literal operations
15                              8    7                                 0
 OPCODE                       k (literal)
k = 8-bit immediate value
Byte to Byte move operations (2-word)
15           12  11                                                0
OPCODE                     f (Source FILE #)
CALL
, GOTO and Branch operations 
15                                    8  7                            0
OPCODE                   n<7:0> (literal)     
n = 20-bit immediate value
a = 1 for BSR to select bank
f  = 8-bit file register address
a = 0 to force Access Bank
a = 1 for BSR to select bank
f  = 8-bit file register address
15                  12   11                                         0
1111
                        n<19:8> (literal)
15           12  11                                                0
    1111                     f (Destination FILE #)
f = 12-bit file register address
Control operations
Example Instruction
ADDWF MYREG, W, B
MOVFF MYREG1, MYREG2
BSF MYREG, bit, B
MOVLW 7Fh
GOTO Label
15                                    8   7                             0
OPCODE                   n<7:0> (literal)     
15                  12   11                                           0
1111
                      n<19:8> (literal)
CALL MYFUNC
15                       11  10                                       0
  OPCODE                   n<10:0> (literal)     
S = Fast bit
BRA MYFUNC
15                               8  7                                   0
OPCODE                      n<7:0> (literal)     
BC MYFUNC
S