the pic program memory (where your program is saved) is divided into pages due to limitation in the program counter size that can't carry the whole address bits for the whole memory. your program may have exceeded the size of one page so it crossed the page boundries to the next page. so the pc (program counter) overflowed. You have to adjust PCLATH register. Read carefully these sections in datasheet: Program memory organization, PCL and PCLATH, program memory paging. ALL of these topics lie under memory organization main topis in the begining of the datasheet