- 课程名称:Linux C语言结构体
- 课程链接:https://www.imooc.com/learn/409
- 章节名称:
- 第6章:位运算的秘密
- 6-1 按位与
- 第6章:位运算的秘密
- 讲师姓名:
雷过就跑
- 时间:2023-02-13 17:30
课程内容
- 位:是指二进制中数的一位,其值为0或者1,0代表false,1代表true
- 位运算在古老芯片中是运行最快的,在现代芯片中位运算与加法运算速度相近,但还是要快于乘法运算的
- C语言提供了六种位运算符
- &按位与
- |按位或
- ^按位异或
- ~按位取反
- <<左移
- >>右移
- 按位与:双目运算符,运算的两个数按位逐个进行与运算,参与运算的必须为
整型
也包括字符型
- 应用:
- 快速清零:变量 &= 0;// 变量的值快速转变为0
- 将数据中指定位的值取出来,比如:一个
int
类型的数值,用二进制表示为0010,0101-1101,1001-0010,0110-1101,0101
- 如果要想取得从左边数第2个字节中的数时,可以使用
该值 & 0xff0000
- 得到的结果再将其右移16位,即两个字节,就可以得到想要的值
- 判断奇偶性
- 与1按位与,如果结果为0,说明是偶数,不为0,说明是奇数
- 应用:
学习心得
C语言位运算是的本质是了解二进制在计算机内部存取规则