位运算【基本运算】
来源:互联网 发布:dns免费域名 编辑:程序博客网 时间:2024/06/08 02:58
上一篇中我们分析了位的定义,这一篇中我们分析一下位的基本运算
1. 移动
左移n位:乘以2的n次方
右移n位:除以2的n次方
(~0)左移n位:在1后面加上n个0 (注:~0不等于1,等于11…11)
x&(~0<<n):将最右边的n位清零
正数左移右边补0
正数右移左边补0
负数左移右边补1
负数右移左边补1
移动的作用总结:乘2,除2,右n位清零
2. 异或
x^0=x
x^x=0
x^1=~x
x^~x=1
异或的作用总结:取数,清零,取非,清1
3. 且运算
x&0=0
x&1=x
x&x=x
且运算的作用总结:位清零,位取数,取数
4. 或运算
x|0=x
x|1=1
x|x=x
或运算的作用总结:位清1,取数。
5. 取位
先把1左移i位
再把num与i做“与运算”
如果是0返回0,否则返回1
也可以直接把这个数右移i位后和1做与运算6. 设位
设置第i位的方法:X|00000010 (i=1)
把第i位清0的方法
把最左边位到i位都清0的方法
把第i位到第1位都清0的方法
8. 更新位
步骤:清位+设位
以上8种基本运算非常重要,每一位想要掌握位运算的朋友,上面的基本运算都需要非常熟练的掌握
0 0
- 位运算【基本运算】
- 位基本运算
- 【基础算法】位运算-基本运算
- 位运算的基本技巧
- 位运算基本操作总结
- Sizeof运算、位运算
- C#的基本位运算符理解
- 基本操作的位运算实现
- shell基本计算、逻辑运算、位运算详解
- 用基本位运算实现加减乘除
- shell 基本计算、逻辑运算、位运算详解
- C#位运算符的基本用法
- 位运算的一些基本操作
- php基本语法之位运算
- 表达式和基本语句与位运算
- 位运算符的基本用法
- 通过位运算来实现基本四则运算
- 位运算
- Linux 关闭Telnet服务
- Windows下PHP环境搭建
- static静态变量的理解
- 【模板】baby_step giant_step poj 2417
- logstash match
- 位运算【基本运算】
- C# 解耦EntityFramework进行单元测试
- 51nod oj 1400 序列分解 【dfs暴力】
- 网站发帖防注入SQL语句之UBB翻译(正则表达式)
- xCode8终端消息出现异常
- 双栈排序
- 位运算【20个技巧】
- x265源码分析:sao.cpp 自适应样点补偿
- 第三周 项目1 顺序表的基本运算