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
相关推荐
有趣的杰克10 分钟前
Flutter InkWell组件去掉灰色遮罩
开发语言·javascript·flutter
梅见十柒18 分钟前
数据结构与算法分析——你真的理解查找算法吗——基于散列的查找(代码详解+万字长文)
java·c语言·c++·笔记·算法·哈希算法·查找算法
末时清18 分钟前
QT交互界面:实现按钮运行脚本程序
开发语言·qt·交互
月巴月巴白勺合鸟月半18 分钟前
C#版的有道智云对话接口
开发语言·c#
yogurt=b21 分钟前
【Python】爬虫程序打包成exe
开发语言·爬虫·python
JAVA在开发hui25 分钟前
基于 Java 的 Spring Boot 和 Vue 的宠物领养系统设计与实现
java·开发语言·宠物
SouthBay49326 分钟前
PHP内存马:不死马
android·开发语言·php
浪里个浪的102428 分钟前
【C#】编写计算机选课程序
开发语言·c#
知困勉行的Allen37 分钟前
~C.库函数的介绍~
c语言·开发语言·数据结构·c++·学习方法
lly20240637 分钟前
SQLite 语法
开发语言