I think you need to learn about the ASCII code. Bytes are just numbers between 0 and 255 and ASCII defines how those numbers map to printable (or non-printable) characters. The number 91, the number 0x61, and the character 'a'
all mean the same thing in C.
When you typed '1' at your terminal program, it encoded it in ASCII as byte 49 (0x31) and sent it to your PIC. Then when you typed '2' at your terminal it encoded it as byte 50 (0x32) and sent it to your PIC.
If you want your PIC to look for a certain character, try using the character literals provided by the C language:
if (message == 'a')