Divisão por uma constante usando turnos e soma / subtrai

Oi pessoal Estou tentando dividir por uma constante não assinada usando apenas turnos e soma / subtrai - não tenho problema com isso se fosse multiplicação, mas estou um pouco perplexo com a divisão.

Por exemplo, digamos que o divisor constante seja 192 e digamos que o dividendo seja 8000

"resultado completo" y = 8000/192 = 41 (assumindo que não estou mantendo bits fracionários)

y = 8000 >> 8 ... 31 y = 8000 >> 7 ... 62

Mas como obtenho uma solução mais precisa?

Muito Obrigado!

questionAnswers(3)

yourAnswerToTheQuestion