The number you get from Microcode Studio is the more accurate. The .HEX file is in Intel Hex format, which is an ASCII representation of the binary source.
A 512 byte or 1K byte PIC should easily hold your code.

If you want to find out what that .HEX file really contains (as well as the load addresses of the code), you can decode the .HEX file according to the rules given at:

www.cs.net/lucid/intel.htm