当前位置: 首页 > article >正文

C语言中的位操作

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

寄存器 |= 值

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

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

寄存器 &= ~() 值

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

  第三章 变量某位取反

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

//例子:a = 1001 0011b
a ^= (1<<6);
//结果:a = 1101 0011b


http://www.kler.cn/a/371289.html

相关文章:

  • Tomcat 11 下载/安装 与基本使用
  • Qt/C++ 调用迅雷开放下载引擎(ThunderOpenSDK)下载数据资源
  • mysql 十把锁之《小猫钓鱼》
  • GO语言实现AES-CFB加密
  • QT 中彻底解决中文乱码问题的指南
  • Linux系统下minio设置SSL证书进行HTTPS远程连接访问
  • Nginx配置基于端口的 Web 服务器
  • [面试题]ES6 Javascript
  • Diving into the HAL-----HAL_GPIO
  • Elasticsearch 向量搜索
  • Java学习笔记(十)
  • golang版本工具GVM 和包管理工具go mod原理讲解
  • 17 Docker容器存储架构:docker存储持久化-bind mount
  • 计算机视觉-Harris特征点检测实验报告
  • c++11新语法(上)
  • Python bs4 结合 Scrapy,进行数据爬取和处理
  • 利用游戏引擎的优势
  • windows 驱动实例分析系列: NDIS 6.0的Filter 驱动改造(四)
  • Educational Codeforces Round 171 (Rated for Div. 2)(A~D题题解)
  • ChatGPT、Python和OpenCV支持下的空天地遥感数据识别与计算——从0基础到15个案例实战
  • Ubuntu22.04环境搭建MQTT服务器
  • 【Spring框架】Spring框架的开发方式
  • 短视频矩阵系统源代码开发|技术源代码部署/OEM贴牌搭建
  • electron知识整理和问题汇总
  • Data+AI时代下,如何做数字化转型升级!
  • 【MySQL】 运维篇—备份与恢复:使用mysqldump进行数据库备份与恢复