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

相关推荐
2401_8273645612 分钟前
迷宫【BFS+结构体\pair】
算法·宽度优先
于慨1 小时前
计算机考研C语言
c语言·开发语言·数据结构
Bruce Jue2 小时前
算法刷题--贪心算法
算法·贪心算法
慕容魏3 小时前
入门到入土,Java学习 day16(算法1)
java·学习·算法
认真的小羽❅3 小时前
动态规划详解(二):从暴力递归到动态规划的完整优化之路
java·算法·动态规划
蜕变的土豆4 小时前
二、重学C++—C语言核心
c语言·c++
LiDAR点云4 小时前
Matlab中快速查找元素索引号
数据结构·算法·matlab
CYRUS_STUDIO4 小时前
安卓逆向魔改版 Base64 算法还原
android·算法·逆向
CYRUS_STUDIO5 小时前
安卓实现魔改版 Base64 算法
android·算法·逆向
一只_程序媛5 小时前
【leetcode hot 100 142】环形链表Ⅱ
算法·leetcode·链表