The essential answer is to "multiply by the reciprocal of your desired constant", using shifts-and-adds to carry out the multiply, and then some possible post-shifts to position the binary point properly.
The trick is figuring out what the precision of the reciprocal must be, to handle the size of the largest input dividend you expect. You can obviously decide the largest input operand is the entire register, but if you know more, you can use a reciprocal with fewer bits which gets you a faster shift-add style multiply.
Cuoq's answer provides good reference material.