If all you are doing is /256 and want an 8 bit fractional, you actually do nothing at all. You just "pretend" you did a divide. In an FPGA there is no real bitshifting when dividing, you just append zeros depending on which way you shift.
So if you had 152, and then divide by 256, then multiply by 1.5 (answer = 228), you just do this:
input = 10011000 (152)
1.5 = 1.1
just append zeros to 1.5 (multiply by 256)
= 110000000
Do the multiply.
You have 8 bits fractional and 8 bits integer. (because your source, 152 was all fractional bits) so you discard the 8 LSBs and you have your answer
so you have:
0 1 0 0 1 1 0 0 0
x 1 1 0 0 0 0 0 0 0
-------------------------------------
= 0 1 0 0 1 1 0 0 0
+ 0 1 0 0 1 1 0 0 0
-------------------------------------
0 1 1 1 0 0 1 0 0|0 0 0 0 0 0 0 0
--Integer Fraction
11100100 = 228