关于a&(a-1)的作用

int a;

a&(a-1)的结果是什么呢?

首先将数值 a 用二进制表示,那么a-1表示啥?1000100-1即为1000001

含义如下,从右往左第一个1出现的位置置0;此位置后面的0全部置为1;

当他们相与的时候从找到的第一个1的位置及其往后位置全部变为0;效果就是消除了最后一个1;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 11,297评论 6 13
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,253评论 19 139
  • 今天晚上我在火锅店吃饭,楼梯旁边有六座假山,上边有很多的植物,山底下就是水,水泥边有白色和红色的鱼。还有白和红混合...
    小狐狸的麻麻阅读 660评论 0 0
  • 雪,是纯洁的精灵 为了春天 飘落 蝴蝶,是美丽的花朵 为了深刻 凋落 花,是心的泪 为了美丽 破碎 生命,是时间的...
    大利I时光阅读 146评论 0 1
  • 忘了,怎么开始关注她的。 应该是看到一篇关于哪个互联网大佬的评论后,发现文风犀利,独特又有深度,同时文章末尾出现了...
    零零候鸟阅读 10,992评论 2 2