基础位运算。
来源:互联网 发布:可爱软件图标大全 编辑:程序博客网 时间:2024/05/14 23:52
& 按位与,表示2个二进制数相应的位都为1则为1,否则为0,这一位一假为假
| 按位或,表示2个二进制数相应的位如果有1则为1,这一位一真为真
^ 按位异或,表示2个二进制数相应的位如果相同则为0,不同为1。~ 取反,表示取反,所有0变成1,所有1变成0
#include <iostream>using namespace std;int main(){ int n,m,i,j,k; cin >> n; n=n<<3; cout << n << "\tn<<3是指给n*2^3次方"<<endl; n=n>>3; cout << n << "\tn>>3是指给n/2^2次方"<<endl; //&是与位运算,意思是对应的位都为1,结果才为1。应用:判断奇偶性。 cout << "7(10)=111(2),8(10)=1000(2)"<<endl; if(n&1)cout << "是奇数" <<endl; else cout << "是偶数" << endl; if(!(n&n-1))cout << "是2的幂次" << endl; else cout << "不是2的幂次" << endl; k=3; n=(n&(1<<k)-1); //表示n%(2^k),当k=3,对8取mod cout <<n << "\t表示n%(2^k),此时k=3"<<endl; n=(7&8); cout <<n << "\t7与8进行与运算,由于各个位没有全部是1的位,所以结果为0"<<endl; n=(7|8); cout << n << "\t7与8进行或运算,由于各个位都有1,结果为15"<<endl; n=(7^8); cout << n << "\t7与8进行异运行各个位置都不同则全为1,结果为15"<<endl; //|是或位运算,意思是对应的位有为1,结果就为一。应用:把末尾的二进制强制转换为1。 // ^是异位运算,意思是对应的位相同则为0,不同则为1。 // ~表示取反,所有位如为0则变成1,如为1则变成0。 return 0;}
0 0
- 位运算(基础篇)
- 位运算基础:入门
- java 位运算基础
- 位运算符基础
- Java基础: 位运算 << >> >>>
- 基础位运算。
- Java基础 位运算
- 位运算基础
- 基础—位运算例
- 位运算符 -- 基础篇
- __15__C#基础的位运算
- java基础 位运算符 >> <<
- java之位运算基础
- 位运算(1)-- 基础
- 【基础算法】位运算-基本运算
- java 位运算与运算基础
- 【基础算法】位运算-基础篇
- [短码基础] 神奇的位运算
- Spring Boot - 配置排序依赖技巧
- 关于安卓开发,开机自启Service的用法
- import this
- Centos7更改默认启动模式
- maven(三):maven项目结构及其运行机制
- 基础位运算。
- 剖析 Linux hypervisor
- Handler机制
- 队列
- linux中三种time(atime,mtime,ctime)
- 请教一个ASP里面自动编号问题
- Linux必学的60个命令
- Android 即时通讯软件
- 为什么系统好像可以自动跳出这个while循环