什么是位运算

什么是位运算

  1. 1个字节有8个位,每个位有0、1两个取值。1 B = 8 bits
    6.1.2开灯关灯
    只有1个字节的8个位来控制8盏灯?该位为0代表灯灭,该位为1代表灯亮,如图:
    在这里插入图片描述

1.打印长度
在这里插入图片描述

输出结果:
在这里插入图片描述

6.1.3改变状态及C语言中的位运算符类别
位逻辑运算符:&(位“与”)、^(位“异或”)、|(位“或”)、~(位“取反”)。
移位运算符:<<(左移)、>>(右移)
6.1.4位逻辑运算符
位逻辑运算以位(bit)为单位。
6.1.5位取反操作
位取反的操作符为“~”,0变成1,1变成0,需要注意的是,位取反运算并不改变操作数的值。

  1. 取反示例
    在这里插入图片描述

输出结果:
在这里插入图片描述

6.1.6位与运算
位与运算的操作符为&,1 & 1=1 1 & 0=0 0 & 1=0 0 & 0=0

  1. 位与运算示例
    在这里插入图片描述

输出结果:
在这里插入图片描述

  1. 位与实现按位清零
    在这里插入图片描述

输出结果:
在这里插入图片描述

6.1.7位或运算
位或运算的操作符为|,将对两个操作数的每一位进行或运算,位“或”运算的准则如下:
1 | 1=1 1 | 0=1 0 | 1=1 0 | 0=0
6.1.8异或运算
位异或运算的操作符为^,将对两个操作数的每一位进行异或运算。通俗地讲,如果位“异或”运算的两个位相同(同为0或同为1),结果为0,若两个位不同(一个为0,另一个为1),结果为1,对应的准则为:
1 ^ 1=0 1 ^ 0=1 0 ^ 1=1 0 ^ 0=0

  1. 异或运算示例
    在这里插入图片描述

输出结果:
在这里插入图片描述

  1. 异或实现反转
    在这里插入图片描述

输出结果:
在这里插入图片描述

  1. 异或交换两个变量,不借助中间变量
    在这里插入图片描述
    在这里插入图片描述

输出结果:改变上面代码ch1和ch2的值分别为120和110后的结果
在这里插入图片描述

  1. 位运算总结
    在这里插入图片描述
    输出结果:
    在这里插入图片描述

总结注释:
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值