mod运算,即求余运算,是在整数运算中求一个整数 x 除以另一个整数y的余数的运算,且不考虑运算的商。在计算机程序设计中都有MOD运算,其格式为: mod(nExp1,nExp2),即是两个数值表达式作除法运算后的余数。
模p运算
给定一个正整数p,任意一个整数n,一定存在等式
n = kp + r其中k、r是整数,且 0 ≤ r < p,称呼k为n除以p的商,r为n除以p的余数
(p是除数, k 相当于商, n相当于被除数, r 相当于余数,余数一定是比除数小的 ,即r<p)
对于正整数p和整数a,b,定义如下运算:
- 取模运算:a mod p 表示a除以p的余数。
- 模p加法:(a + b) mod p ,其结果是a+b算术和除以p的余数,也就是说,(a+b) = kp +r,则 (a+b) mod p = r。
- 模p减法:(a-b) mod p ,其结果是a-b算术差除以p的余数。
- 模p乘法:(a × b) mod p,其结果是 a × b算术乘法除以p的余数。
运算规律
结合律 | ((a+b) mod p + c)mod p = (a + (b+c) mod p) mod p ((a×b) mod p×c)mod p = (a× (b×c) mod p) mod p |
交换律 | (a + b) mod p = (b+a) mod p (a × b) mod p = (b × a) mod p |
分配律 | ((a +b)mod p × c) mod p = ((a × c) mod p + (b × c) mod p) mod p (a×b) mod c=(a mod c * b mod c) mod c (a+b) mod c=(a mod c+ b mod c) mod c (a-b) mod c=(a mod c- b mod c) mod c</ |