6.1.4 Comments

An assembly comment is initiated with a semicolon that is not part of a string or character constant, for example:
  movlw 22   ;this value will ensure there is a good safety margin

If the assembly file is first processed by the C preprocessor, then the file can also contain C or C++ style comments using the standard /* ... */ and // syntax.

Avoid using assembly comments (;comment) in preprocessor directives, especially the #define directive. Assembly comments are not removed by the C preprocessor prior to macro substitution and so will appear in the substituted text, possibly resulting in build errors. Always use C or C++ style comments in these situations.