C语言例3-30:位逻辑运算的应用例子

位逻辑运算的应用例子

复制代码
char c1=0x12, c2=0xFF, c3=0x0F;
  • c1 为十六进制整数,对应的二进制数是0001 0010 。
  • c2 为十六进制整数,对应的二进制数是1111 1111 。
  • c3 为十六进制整数,对应的二进制数是0000 1111 。

任何数与0xFF进行按位与的运算结果是数本身。

任何数与0xFF进行按位或的运算结果是0xFF。

  1. 表达式 c1 & c2

运算结果等于c1

0001 0010

++& 1111 1111++

0001 0010

  1. 表达式 c1 | c2

运算结果等于0xFF

0001 0010

++| 1111 1111++

1111 1111

  1. 表达式 c1 ^ c2

运算结果是~c1(取反)

0001 0010

++^ 1111 1111++

1110 1101

  1. 表达式 c1 & c3

运算结果,c1高4位为0,低4位不变

0001 0010

++& 0000 1111++

0000 0010

  1. 表达式 c1 | c3

运算结果,c1高4位不变,低4位均为1

0001 0010

++| 0000 1111++

0001 1111

  1. 表达式 c1 ^ c3

运算结果,c1高4位不变,低4位取反

0001 0010

++^ 0000 1111++

0001 1101

相关推荐
房开民8 小时前
可变参数模板
java·开发语言·算法
不知名的忻8 小时前
Morris遍历(力扣第99题)
java·算法·leetcode·morris遍历
状元岐8 小时前
C#反射从入门到精通
java·javascript·算法
itman3019 小时前
C语言、C++与C#深度研究:从底层到现代开发演进全解析
c语言·c++·c·内存管理·编译模型
_深海凉_9 小时前
LeetCode热题100-除了自身以外数组的乘积
数据结构·算法·leetcode
Kk.080210 小时前
项目《基于Linux下的mybash命令解释器》(一)
前端·javascript·算法
爱编码的小八嘎10 小时前
C语言完美演绎8-2
c语言
SteveSenna10 小时前
Trossen Arm MuJoCo自定义1:改变目标物体
人工智能·学习·算法·机器人
yong999010 小时前
IHAOAVOA:天鹰优化算法与非洲秃鹫优化算法的混合算法(Matlab实现)
开发语言·算法·matlab
米粒111 小时前
力扣算法刷题 Day 42(股票问题总结)
算法·leetcode·职场和发展