神奇的运算符——取模

最近在看哈希表,把相应的哈希值散列分组到相应的slot(槽)中,中间用到了大量的移位运算和取模。

今天测试取模运算的时候,发现了一个取模运算的知识点。

例如 4取模2 = 0 ,4取模4=0 用二进制表示就是:

4 % 2

0100 (红色部分得出的结果是0)

*************************

4 % 4

0100 (红色部分得出的结果还是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道路前方充满了曙光。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值