You can set eight unique User ID Bytes (either at program time with your programmer, or at run time through your program (on 18F types), but there is no actual unique 'Serial Number' embedded into any PIC, just a product family ID (which is usually used by good programmers to warn you if you have inserted an incorrect PIC for the program you are about to burn).