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
相关推荐
Wang's Blog2 分钟前
Nodejs-HardCore: 玩转 EventEmitter 指南
开发语言·nodejs
DYS_房东的猫7 分钟前
《 C++ 零基础入门教程》第5章:智能指针与 RAII —— 让内存管理自动化
开发语言·c++·自动化
零度@8 分钟前
Java 消息中间件 - 云原生多租户:Pulsar 保姆级全解2026
java·开发语言·云原生
jghhh019 分钟前
基于MATLAB的分块压缩感知程序实现与解析
开发语言·算法·matlab
%xiao Q10 分钟前
信息学奥赛一本通(部分题解)
c语言·c++·算法
枫叶丹413 分钟前
【Qt开发】Qt系统(六)-> Qt 线程安全
c语言·开发语言·数据库·c++·qt·安全
你怎么知道我是队长14 分钟前
C语言---错误处理
c语言·开发语言
信奥胡老师14 分钟前
P14917 [GESP202512 五级] 数字移动
开发语言·数据结构·c++·学习·算法
天若有情67315 分钟前
用 Python 爬取电商商品数据:从入门到反爬破解
开发语言·python
txinyu的博客15 分钟前
结合STL,服务器项目解析vetcor map unordered_map
开发语言·c++