神奇的运算符——取模

2019-04-13 17:35发布

最近在看哈希表,把相应的哈希值散列分组到相应的slot(槽)中,中间用到了大量的移位运算和取模。 今天测试取模运算的时候,发现了一个取模运算的知识点。 例如 4取模2 = 0 ,4取模4=0     用二进制表示就是:  4          %           2  0100                                      (红 {MOD}部分得出的结果是0) ************************* 4           %          4 0100                                       (红 {MOD}部分得出的结果还是0)
如果一直往下推断的话: 6模2或4或8              8模2或4或8 6         %      2            8         %         2             0110  1000 ************************************************* 6         %      4            8       %         4  0110                         1000 (结果是10,转换为二进制是2) 上面是举例偶数对2的幂的取模,我想奇数对2的幂取模也是相同的道理。 根据这个规律我们很快能够计算出一个二进制数取模运算一个2的n次方数的结果 例如:                    1011   0001   1101 1010                      取模运算2^6——2的6次方 结果必然是  0000   0000   0001 1010 取模运算还有很多我不了解的作用,信息爆炸的时代,IT道路前方充满了曙光。