Need some help understanding PIC memory map

The PIC uses what's called a "Harvard Architecture", which means that it has separate address spaces for instructions and data.

Whether an address refers to a register or an instruction depends on the context in which it is used.

The diagrams in section 2.1 "Program Memory Organization" are about program memory, or instruction address space. The diagrams in section 2.2 "Data Memory Organization" are about registers and special function registers, or data memory address space.


What Dave said, but I also want to point out that program memory starts at 0, not 5. On a reset, the processor sets the PC to 0 and starts running. On a interrupt, the processor effectively causes a call to location 4 and turns off the global interrupt enable bit. Program memory location 5 is not special, other than this will be the second instruction of the interrupt routine if you have a interrupt routine.