Jason Harper says:
Assuming that code space is also a concern, try this: it's a bit shorter than the other solutions I've seen posted. Note that it actually calculates input * 102 / 256, but due to roundoff errors it produces 100 for an input of 255, so it should do the job for you.
percentify ; input in W, output in temp movwf temp bcf status,c rrf temp,f ;temp = input * 128 / 256 addwf temp,f ;carry/temp = input * 384 / 256 rrf temp,f ;temp = input * 192 / 256 bcf status,c rrf temp,f ;temp = input * 96 / 256 swapf temp,w andlw 0x0F ;w = input * 6 / 256 addwf temp,f ;temp = input * 102 / 256 ;or: addwf temp,w for result in w return