C语言位运算符
来源:互联网 发布:淘宝晚上收货时间 编辑:程序博客网 时间:2024/04/30 14:12
#include <stdio.h>void main(){ int A=8;//(8)10=(1000)2 int B=9;//(9)10=(1001)2 printf("位或运算:A|B=%d\n", A|B);//"|"表示位或,有一个1就是1,1000|1001=1001=(9)10 printf("位与运算:A&B=%d\n", A&B);//8 printf("位异或运算:A^B=%d\n", A^B);//1 printf("位取反运算:~A=%d\n", ~A); //1A:0000 0000 0000 0000 0000 0000 0000 1000 //~A:1111 1111 1111 1111 1111 1111 1111 0111 (补码) //~A:1000 0000 0000 0000 0000 0000 0000 1001 (原码:补码按位取反末位加一):所有~A=-9 printf("位左移运算:A<<2=%d\n", A<<2);//32 printf("位右移运算 :B>>2=%d\n", B>>2);//2 int MAX_INT=2147483647; int MIN_INT=-1; printf("位左移运算:MAX_IN<<1=%d\n",MAX_INT<<1); //1111 1111 1111 1111 1111 1111 1111 1110<---最后一位是用零补上 的所以是--->-2 printf("位右移运算:MIN_IN>>1=%d\n",MIN_INT>>1); //1111 1111 1111 1111 1111 1111 1111 1111--->右移一位后,用符号位补全,结果还是-1 int i=0; while(i++<10) { printf("1位右移运算:MIN_IN>>1=%d\n",MIN_INT>>1);//符号位补全,结果还是-1 }}结果:
位或运算:A|B=9位与运算:A&B=8位异或运算:A^B=1位取反运算:~A=-9位左移运算:A<<2=32位右移运算 :B>>2=2位左移运算:MAX_IN<<1=-2位右移运算:MIN_IN>>1=-11位右移运算:MIN_IN>>1=-11位右移运算:MIN_IN>>1=-11位右移运算:MIN_IN>>1=-11位右移运算:MIN_IN>>1=-11位右移运算:MIN_IN>>1=-11位右移运算:MIN_IN>>1=-11位右移运算:MIN_IN>>1=-11位右移运算:MIN_IN>>1=-11位右移运算:MIN_IN>>1=-11位右移运算:MIN_IN>>1=-1
阅读全文
0 0
- 位运算符C语言
- c语言位运算符
- 位运算符C语言
- C语言位运算符
- c语言位运算符
- C语言位运算符
- 位运算符C语言
- C语言位运算符
- c语言位运算符
- c语言:位运算符
- C语言位运算符
- 位运算符C语言
- C语言--位运算符
- C语言位运算符
- C语言位运算符
- C语言位运算符
- c语言位运算符
- 位运算符C语言
- 实验15 安装新的int 9中断例程
- Wave, my iOS dev life
- hadoop master到slave1节点ssh配置完成后,scp出现permission denied
- Java的GridBagLayout布局
- PHPWord使用过程BUG记录
- C语言位运算符
- 搭建图片服务器《一》-linux安装ftp组件
- promise对象的简单用法
- 【NOIP模板】 gcd & lcm
- 嚼得菜根做得大事·《菜根谭》·六
- 利用Java的反射、泛型以及动态参数实现JDBC工具类
- 第11章-img特征,vertical-align,cursor,opacity
- 洛谷 P3811 【模板】乘法逆元
- Ant * 星号通配符