1.概念

异或运算符”∧”也称XOR运算符。它的规则是若参加运算的两个二进位同号,则结果为0(假);异号则为1(真)。即 0∧0=0,0∧1=1, 1^0=1,1∧1=0。

运算     说明

0^0=0,0^1=1     0异或任何数,其结果=任何数

1^0=1,1^1=0     1异或任何数,其结果=任何数取反

x^x=0     任何数异或自己,等于把自己置0

2.应用

(1)使特定位翻转

比如:01111010,想使其低4位翻转,即1变为0,0变为1。可以将它与00001111进行∧运算,即

这里写图片描述

结果值的低4位正好是原数低4位的翻转。要使哪几位翻转就将与其∧运算的该几位置为1即可。这是因为原数中值为1的位与1进行∧运算得0,原数中的位值0与1进行∧运算的结果得1。

(2)实现两个值的交换

通过按位异或运算,可以实现两个值的交换,而不必使用临时变量。例如交换两个整数a=3,b=4的值,可通过下列语句实现:

a=a∧b;

b=b∧a;

a=a∧b;

这里写图片描述

#include

void main()

{

int a=3,b=4;

a=a^b;

printf("first value %d\n",a);

b=b^a;

printf("second value %d\n",b);

a=a^b;

printf("third value %d\n",a);

}

转载自:

作者:wwt18811707971

来源:CSDN

原文:https://blog.csdn.net/wwt18811707971/article/details/78291490

版权声明:本文为博主原创文章,转载请附上博文链接!

异或c语言程序 次幂的关系,C语言中位运算异或“∧”的作用相关推荐

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

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

  2. 常见位操作及运算应用举例:1,C语言中位运算符异或“∧”的作用​​​​​​​2,异或运算的作用3,(与运算)、|(或运算)、^(异或运算)

    1 C语言中位运算符异或"∧"的作用: 异或运算符∧也称XOR运算符.它的规则是若参加运算的两个二进位同号,则结果为0(假):异号则为1(真).即0∧0=0,0∧1=1,1∧1=0 ...

  3. c语言程序第一章编程,c语言程序的设计第一章 C语言编程入门.ppt

    c语言程序的设计第一章 C语言编程入门 第1章 C语言编程入门 本章是本书的入门篇,专为初学者熟悉编程过程.掌握程序结构而准备的. 本章学习目标 ? 1)? 能够通过模仿与改变来构造带有测试函数的C语 ...

  4. 统计字符 c语言程序,统计字符个数的C语言程序.doc

    统计字符个数的C语言程序.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3.该文 ...

  5. C语言截取整数的某些位编程,C语言中位运算的巧用(转)

    一 .位运算实例 1.用一个表达式,判断一个数X是否是2的N次方(2,4,8,16.....),不可用循环语句. X:2,4,8,16转化成二进制是10,100,1000,10000.如果减1则变成0 ...

  6. c语言中位运算之布尔运算

    c语言中位运算中的布尔运算有:&.|.~.^ &:按位与 |:按位或 ~:按位非 ^:按位异或,相同为0,相异为1. 计算规则如下: 位的逻辑运算的作用: 使用位向量做集合编码: 使用 ...

  7. 位运算--异或运算XOR

    c++编程中的基础数学问题 02位运算–异或 今天分享一下在编程当中尤其是在数学部分非常重要的一个部分支–位运算.别看位运算就那么几个简单的运算符号,如果能好好利用就能特定的问题中大放异彩. 这里我们 ...

  8. 【位运算 异或】51nod区间xor

    [位运算 异或]51nod区间xor 题目 思路 O(1)求异或前缀和 证明博客可以看这个 代码 #include<bits/stdc++.h> using namespace std; ...

  9. c语言程序与设计苏小红,c语言程序设计苏小红

    <实验教学示范中心建设教材·国家精品课程主讲教材:C语言程序设计(第2版)>是一本兼具趣味性和实用性的C语言程序设计教材.全书由13章组成,内容包括:为什么要学C语言,C数据类型,简单的算 ...

最新文章

  1. LeetCode简单题之基于排列构建数组
  2. 如何利用 C# 实现 K 最邻近算法?
  3. future career plan
  4. SAP Spartacus Theme 设置
  5. mysql获取相隔时间段的数据
  6. 海上瓶子下有东西吗_洗衣液瓶子我从来不扔,瓶身这样剪几刀,解决了很多家庭的大烦恼...
  7. 2020年度工作计划_2020最新年度个人工作计划(精选3篇)
  8. Python中fastapi构建的web项目进行docker部署
  9. python编程字符输入连接_python字符串连接的N种方式总结
  10. Git 在 Linux 上和 windows 上的安装
  11. 无向图java_Java实现无向图的建立与遍历
  12. Java技术栈思维导图
  13. 短时傅里叶变换(Short Time Fourier Transform)
  14. 输入输出练习 python
  15. 微分方程数值解 matlab,本学期微分方程数值解课程总结(matlab代码)
  16. 【无标题语音聊天app源码——语音聊天派对】
  17. ts快捷键 vscode_VS Code快捷键
  18. burnintest激活_PassMark BurnInTest Pro v9.0.1006(拷机软件)真正注册版
  19. MISC常用工具(会接着补)
  20. 360浏览器极速模式自动_浏览器正在为网站带来自动暗模式

热门文章

  1. 解决电脑能上QQ,却打不开网页的问题
  2. 电路图:飞利浦 15a显示器电源电路图
  3. 2022年施工员-市政方向-岗位技能(施工员)复审题库及在线模拟考试
  4. ES中BKD VS doc value
  5. 操作系统——银行家算法(c语言)
  6. Android手游 “2048” 源码解析
  7. java多线程应用_Java多线程的应用总结
  8. ipad和iphone适配_如何更改您的iPhone和iPad键盘的语言
  9. 场馆预约小程序开发制作功能介绍
  10. 物联网技术概论:第6章