Я хочу знать, как получить остаток, разделив целое число на другое целое (оба положительные), используя только битовые или побитовые операторы. Оператор / или % не должен использоваться.
Например, для получения остатка, когда делитель имеет вид 2^k, следующая операция дает остаток.
m = Remainder
n = The number
d = The divisor
m = n & ( d - 1 )
Однако этот метод работает только тогда, когда d имеет вид 2^k. Я хочу знать аналогичный метод для не-полномочий 2. В настоящее время я работаю над проблемой из programming challenges и хочу использовать такой метод для сокращения времени выполнения программы.