C语言中的位操作

第一章 变量某位赋值与连续赋值

寄存器 |= 值

cpp 复制代码
//例如:a = 1000 0011b 
a |= (1<<2) //a = 1000 0111 b 单独赋值
a |= (3<<2*2) // 1011 0011b 连续赋值

第二章 变量某位清零与连续清零

寄存器 &= ~() 值

cpp 复制代码
//例子:a = 1001 1111
a &= ~(1<<2)
//结果 a = 1001 1011
a  &= ~(3<<2*1);
//结果a = 1001 0011

第三章 变量某位取反

寄存器 ^= 值 (异或操作)

cpp 复制代码
//例子:a = 1001 0011b
a ^= (1<<6);
//结果:a = 1101 0011b
相关推荐
专注VB编程开发20年18 分钟前
.NET Reflector反编绎,如何移除DLL中的一个公开属性
开发语言·c++·c#
vxiam14xxx32 分钟前
【Java Swing 项目】java 聊天系统
java·开发语言·python
落羽的落羽33 分钟前
【Linux系统】C/C++的调试器gdb/cgdb,从入门到精通
linux·服务器·c语言·c++·人工智能·学习·机器学习
朱嘉鼎1 小时前
KeilIDE背后的命令
c语言·嵌入式硬件·keilmdk
znhy@1231 小时前
十三、JS进阶(二)
开发语言·前端·javascript
@木辛梓1 小时前
Linux 线程
linux·开发语言·c++
孤独的追光者2 小时前
使用Qt Designer开发上位机
开发语言·python·qt
m0_736927042 小时前
Java面试场景题及答案总结(2025版持续更新)
java·开发语言·后端·职场和发展
muyouking112 小时前
Rust + WASM + Svelte 深度实战:内存管理、性能权衡与图像处理进阶
开发语言·rust·wasm
仟濹2 小时前
「经典数字题」集合 | C/C++
c语言·开发语言·c++