We know that for example modulo of power of two can be expressed like this:
x % 2 inpower n == x & (2 inpower n - 1).
Examples:
x % 2 == x & 1
x % 4 == x & 3
x % 8 == x & 7
What about general nonpower of two numbers?
Let’s say:
x % 7 == ?
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
First of all, it’s actually not accurate to say that
Simple counterexample:
x = -1. In many languages, including Java,-1 % 2 == -1. That is,%is not necessarily the traditional mathematical definition of modulo. Java calls it the “remainder operator”, for example.With regards to bitwise optimization, only modulo powers of two can “easily” be done in bitwise arithmetics. Generally speaking, only modulo powers of base b can “easily” be done with base b representation of numbers.
In base 10, for example, for non-negative
N,N mod 10^kis just taking the least significantkdigits.References