The code protect attribute allows part or all of the executable program within the CPU to be inspected and modified after the chip has been programmed
Code protection is normally used to prevent someone else copying the executable program. It is a form of copy protection.
It is generally a good idea to disable copy protection while developing a program.
Enabling the code protect attribute will effect the way the chip can be programmed the next time. The user is advised to read the revelent Microchip documentation before enabling code protection.