黑马程序员技术交流社区

标题: 位运算补充 [打印本页]

作者: lvguodong    时间: 2015-10-1 23:49
标题: 位运算补充
#include <stdio.h>
int main()
{
    int a=1,b=9,c=6,d=0;
    printf("%d&%d=%d\n",a,b,a&b);       //按位与   1&奇数的值为1
    printf("%d&%d=%d\n",a,c,a&c);       //按位与   1&偶数的值为0
    printf("%d&%d=%d\n",a,d,a&d);       //按位与   0&整数的值为0
    printf("%d|%d=%d\n",a,b,a|b);       //按位或   1|奇数的值为奇数
    printf("%d|%d=%d\n",a,c,a|c);       //按位或   1|偶数的值为(偶数+1)
    printf("%d|%d=%d\n",a,d,a|d);       //按位或   0|整数的值为整数
    printf("%d^%d=%d\n",a,b,a^b);       //按位异或
    printf("%d^%d^%d=%d\n",a,b,a,a^b^a);//按位异或  整数按位异或另外两个相同整数的整体值为整数,不分顺序
    printf("%d^%d=%d\n",a,a,a^a);       //按位异或  两个相同整数按位异或的整体值为0
    printf("~%d=%d\n",b,~b);            //按位取反
    printf("%d<<2=%d\n",b,b<<2);        //左位移
    printf("%d>>3=%d\n",b,b>>3);        //右位移


    return 0;
}






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2