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
相关推荐
珹洺2 分钟前
C++AI多模型聊天系统(三)AI多模型(豆包/Kimi/千问)接入与实现
开发语言·c++·人工智能
Bat U1 小时前
JavaEE|多线程(五)
java·开发语言·jvm
玉小格1 小时前
对py作业的一个复盘
开发语言·python
Rust研习社1 小时前
使用 Tonic 构建高性能异步 gRPC 服务
开发语言·网络·后端·http·rust
captain3761 小时前
JDBC(Java Data Base Connectivity)
java·开发语言
南境十里·墨染春水1 小时前
C++笔记 STL——vector
开发语言·c++·笔记
故事和你912 小时前
洛谷-算法2-2-常见优化技巧3
开发语言·数据结构·c++·算法·深度优先·动态规划·图论
foundbug9992 小时前
MATLAB时频分析工具箱:基于FRFT的信号检测与参数估计
开发语言·matlab
DevilSeagull2 小时前
Rust 方法语法:从定义到实践
开发语言·后端·rust
charlie1145141912 小时前
通用GUI编程技术——图形渲染实战(三十七)——D3D11初始化与SwapChain:从零搭建GPU渲染框架
开发语言·c++·3d·图形渲染