C/运算符(按位与、按位或、按位异或)

article/2025/11/6 5:07:49

本文主要介绍C语言中按位与、按位或、按位异或三个操作符的使用。

该三个操作符中的位,代表的是二进制位。

  • 按位与:&

运算规则:只有两个数的二进制同时为1,结果才为1,否则为0。(负数按补码形式参加按位与运算)

实例: 

#include<stdio.h>int main()
{int a = 3 & 5;printf("%d  ", a);return 0;
}

输出结果:

分析该代码 : 

  1. 3的补码: 0000 0000 0000 0000 0000 0000 0000 0011.
  2. 5的补码: 0000 0000 0000 0000 0000 0000 0000 0101.
  3. 经过按位与的操作,得到的补码为:0000 0000 0000 0000 0000 0000 0000 0001.

故输出结果为1.

  • 按位或:|

运算规则:只有两个数的二进制同时为0,结果才为0,否则为1。(负数按补码形式参加按位或运算)

实例:

#include<stdio.h>int main()
{int a = 3 | 5;printf("%d  ", a);return 0;
}

输出结果:

 分析该代码:

  1. 3的补码:0000 0000 0000 0000 0000 0000 0000 0011.
  2. 5的补码:0000 0000 0000 0000 0000 0000 0000 0101.
  3. 经过按位或的操作,得到的补码为: 0000 0000 0000 0000 0000 0000 0000 0111.

故输出结果为7.

  • 按位异或:^

运算规则:当两个数的二进制相同时,结果为0,否则为1。(负数按补码形式参加按位异或运算)

实例:

#include<stdio.h>int main()
{int a = -3 ^ 5;printf("%d  ", a);return 0;
}

输出结果:

 分析该代码:

  1. -3的补码:1111 1111 1111 1111 1111 1111 1111 1101.
  2. 5的补码:0000 0000 0000 0000 0000 0000 0000 0101.
  3. 经过按位异或得到的补码为:1111 1111 1111 1111 1111 1111 1111 1000

故输出结果为-8.

这篇博客如果对你有帮助,给博主一个免费的点赞以示鼓励,欢迎各位🔎点赞👍评论收藏⭐️,谢谢!!!
如果有什么疑问或不同的见解,欢迎评论区留言哦。


http://chatgpt.dhexx.cn/article/pqBYvHpW.shtml

相关文章

C | 妙用异或

CSDN话题挑战赛第2期 参赛话题&#xff1a;学习笔记 啊我摔倒了..有没有人扶我起来学习.... 目录 前言一、问题的引出二、异或实现俩变量值的交换三、总结 前言 异或也叫半加运算&#xff0c;其运算法则相当于不带进位的二进制加法&#xff1a;二进制下用1表示真&#xff0c;0…

C语言中的异或 - 运算符^

最近在完成程序设计入门-C语言中需要计算异或&#xff0c;查阅了很多资料终于明白计算计算原理&#xff0c;记录一下方便以后查询。 流程 举例 为了方便理解&#xff0c;下面结合流程举例说明 a1 6 &#xff0c; 转化成二进制 a2 0110 b1 10&#xff0c;转化成二进制 b2 …

异或^操作符(C语言)

一、 简介 1. 异或^操作符&#xff1a;是一个位操作符&#xff0c;针对于二进制位&#xff08;比特位&#xff09;的操作。 2. 规则&#xff1a;两个数在同一个二进制位&#xff08;比特位&#xff09;&#xff0c;相同为0&#xff1b;不同为1。 3. 异或操作符的一些性质&…

c语言异或(c语言异或符号)

请帮我讲解一下C语言中的异或运算 首先&#xff0c;我们看一下异或的原理&#xff1a; a 3 ^ 5; 3的二进制是0011&#xff0c;5的二进制是0101。异或发现两者的不同之处&#xff0c;所以a最终为0110b(4)。 了解了异或的基本原理后&#xff0c;接下来看上述的代码。 a^b; 这一句…

C语言异或操作详解(小小异或,大大作用~)

文章目录 *按位异或"^"(1)何为“^”&#xff1a;①“^”的介绍 (2)用于算法的经典案例&#xff1a; 1.数组nums包含从0到n的所有整数&#xff0c;但其中缺了一个。请编写代码找出那个缺失的整数。你有办法在O(n)时间内完成吗&#xff1f;&#xff08;源自leetcode面…

【c语言操作符系列1】^(异或操作符)讲解和多种例题详解

目录 一、^ 是什么&#xff08;^称为异或&#xff09; 二、^的规律(特点) 三、可利用^秒杀的常见例题&#xff08;重点&#xff09; 1、消失的数字 2、不一样的人生密码 3、交换两个数&#xff08;不能创建中间变量&#xff09; 4、找出只出现一个的两个数字 一、^ 是什么…

C语言中位运算异或“∧”的作用

前言&#xff1a; 为了方便查看博客&#xff0c;特意申请了一个公众号&#xff0c;附上二维码&#xff0c;有兴趣的朋友可以关注&#xff0c;和我一起讨论学习&#xff0c;一起享受技术&#xff0c;一起成长。 1.概念 异或运算符"∧"也称XOR运算符。它的规则是若参…

此公众号并没有这些scope的权限,错误码:10005

有时候在使用微信公众号时会出错&#xff0c;被告知没有权限&#xff0c;如下图所示&#xff1a; 出现这问题有以下原因&#xff1a; 订阅号没有相关的权限账号没有认证&#xff0c;没有相关的权限scope 参数位置错误 解决方案&#xff1a; 需要在OAuth2.0网页授权中配置授权…

Discuz 论坛 手机端微信登录报错:此公众号并没有这些scope的权限,错误码:10005

抛出问题 当discuz绑定微信公众号时&#xff0c;可以控制微信公众号的一些操作&#xff1a; 解决问题 而出现这种错误的原因一般由三种&#xff1a; 订阅号没有相关的权限账号没有认证&#xff0c;没有相关的权限scope 参数位置错误 排查问题&#xff1a; Discuz的微信…

10005---2017年国内开源项目Top50

国内开源项目&#xff0c;不错&#xff0c;大力支持&#xff0c;顶&#xff01;&#xff01;&#xff01; 我要是有钱&#xff0c;一定出资赞助他们啊。 2017 年度码云热门项目排行榜 TOP 50 出炉啦&#xff01;我们根据所有开源项目在码云的用户关注度、活跃度、访问量等信息…

Gurobi--Error code: 10005. Unable to retrieve attribute solved ‘Pi‘ 解决

Gurobi code 问题代码&#xff1a; 本来想获取变量的对偶空间&#xff0c; double[] dualmodel.get(GRB.DoubleAttr.Pi,model.getConstrs());但是报错&#xff0c;Error code: 10005. Unable to retrieve attribute ‘Pi’ 原因是在gurobi中&#xff0c;二进制变量&#xf…

此公众号并没有这些scope的权限 错误码10005

问题背景 看到好多原先可以的公众号忽然提示&#xff0c;“此公众号并没有这些scope的权限 错误码10005”。其实我也没真正解决。但是翻了论坛&#xff0c;为大家带来以下提示 解决方案

记录一次微信登录失败此公众号并没有这些 scope的权限,错误码:10005

在2023年4月17日&#xff0c;大概早上9:45分微信公众号出现 微信登录失败 此公众号并没有这些 scope的权限&#xff0c;错误码:10005 如下图&#xff1a; 经过网上查阅以及咨询微信开发的人&#xff0c;最终确认出是微信问题。刚开始其他公众号商家还没反馈到微信这个问题&…

Mysql出现问题:ERROR 1005 (HY000): Can‘t create table 解决方案

回城传送–》《数据库问题解决方案》 ❤️作者主页:小虚竹 ❤️作者简介:大家好,我是小虚竹。Java领域优质创作者🏆,CSDN博客专家🏆,华为云享专家🏆,掘金年度人气作者🏆,阿里云专家博主🏆,51CTO专家博主🏆 ❤️技术活,该赏 ❤️点赞 👍 收藏 ⭐再看,养成…

微信授权登录10005解决方案汇总

微信授权登录10005解决方案汇总 微信官方登录能力文档说明: https://developers.weixin.qq.com/community/develop/doc/000c840489c6380d63389dbb451402 微信授权登录报错10005的主要原因: 该图片文章来源: https://blog.csdn.net/qq_39702981/article/details/82703171 其次…

使用readelf分析一个elf文件完整结构

编译器编译源代码后生成的文件叫目标文件&#xff1b; 从结构上来说与可执行文件一致&#xff0c;只是还没有经过动态链接的过程&#xff0c;有符号还没有被调整。与真正可执行文件稍有区别。 可执行文件格式涵盖了程序的编译、链接、装载和执行的各个方面。 windows下的PE和…

GCC详解-Binutils工具之readelf

1、介绍 readelf从ELF 格式的目标文件显示信息。 readelf和objdump提供的功能类似&#xff0c;但是它显示的信息更为具体&#xff0c;并且它不依赖BFD库(BFD库是一个GNU项目&#xff0c;它的目标就是希望通过一种统一的接口来处理不同的目标文件) 2、ELF格式的文件 ELF&…

readelf命令使用

0x1、概述 readelf命令&#xff0c;一般用于查看ELF格式的文件信息&#xff0c;常见的文件如在Linux上的可执行文件&#xff0c;动态库(*.so)或者静态库(*.a) 等包含ELF格式的文件。以下命令的使用是基于android编译出来的so文件上面去运行。 0x2、readelf常用命令 语法&#x…

readelf的使用

记录下有接触到的使用。 这个命令可以用来查询可执行文件依赖什么动态库&#xff0c;查看静态库中包含了什么.o文件。 1、查询可执行文件依赖什么动态库 2、静态库中包含了什么.o文件