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

性质:

(1).与1异或会翻转

(2).与0异或保持不变

(3).一个数异或它本身等于0

(4).每一位的结果只与该位有关。

应用:

(1).使特定位翻转

假设有01110101,现在想让第一位,第三位翻转(最低位为第一位),只要异或00000101,得到01110000.

(2).交换两个值,不用临时变量

  假如a=3,b=4。想将a和b的值互换,可以用以下赋值语句实现:

  a=a∧b;
  b=b∧a;
  a=a∧b;

  即等效于以下两步:

  ① 执行前两个赋值语句:“a=a∧b;”和“b=b∧a;”相当于b=b∧(a∧b)。而b∧a∧b等于a∧b∧b。b∧b的结果为0,因为同一个数与本身相∧,结果必为0。因此b的值等于a∧0,即a,其值为3。

  ② 再执行第三个赋值语句:a=a∧b。由于a的值等于(a∧b),b的值等于(b∧a∧b),因此,相当于a=a∧b∧b∧a∧b,即a的值等于a∧a∧b∧b∧b,等于b。a得到b原来的值。

(3).a^b=c->a^c=b

参考文章:http://blog.sina.com.cn/s/blog_74a459380101d6xl.html

最新文章

  1. RBAC模型速记
  2. 洛谷P1262 间谍网络[强连通分量 BFS]
  3. rpc框架之 thrift连接池实现
  4. JS学习笔记--轮播图效果
  5. 多线程GCD的基本使用以及注意点
  6. BZOJ 1110: [POI2007]砝码Odw
  7. React 源码解读参考,理解原理。
  8. halcon摄像机标定
  9. pagefile.sys and heberfil.sys
  10. Linux编辑器的选择使用
  11. Hacker(九)----黑客攻防前准备1
  12. oracle列合并
  13. PHP foreach 遍历数组是打印出相同的数据
  14. JBox使用详解
  15. xapp1151_Param_CAM模块安装
  16. nova file injection的原理和调试过程
  17. Windows浏览器无法连接VM虚拟机Centos并打开nginx页面
  18. mini-treeselect的动态赋值
  19. MT【292】任意存在求最值
  20. Skip the Class

热门文章

  1. Vue基础理论
  2. Android破解之北斗手机定位系统
  3. SharePoint 更新文档库文档标题(Title)字段
  4. SharePoint中Event Handler的触发
  5. 实践GTD三周年后的体会
  6. IOS 二维码生成
  7. android binder 进程间通信机制6-Binder进程间通信机制的JAVA接口
  8. 每日Scrum--No.6
  9. MySQL 存储过程实例 与 ibatis/mybatis/hibernate/jdbc 如何调用存储过程
  10. 百度推出的echarts,制表折线图柱状图饼图等的超级工具(转)