A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© ifuzhen 中级黑马   /  2014-5-14 23:02  /  1349 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


  1. 假设两个数x和y,则有:

  2. 方法1,算术运算(加减):

  3. x=x+y;  //x暂存两数之和
  4. y=x-y;  //y为两数之和减去y,即原来的x
  5. x=x-y;  //x为两数之和减去现在的y(原来的x),变成原来的y
  6. 方法2,逻辑运算(异或):

  7. x^=y; //x先存x和y两者的信息
  8. y^=x; //保持x不变,利用x异或反转y的原始值使其等于x的原始值
  9. x^=y; //保持y不变,利用x异或反转y的原始值使其等于y的原始值
  10. 关于异或运算要牢记两个原则:

  11. 任何一位二进制数同 1 异或都会变成另外一个(0 同 1 异或的结果是 1,1 同 1 异或的结果是 0)
  12. 任何一位二进制数同 0 异或都保持不变(0 同 0 异或的结果是 0,1 同 0 异或的结果是 1)
复制代码

1 个回复

倒序浏览
ifuzhen 同学
请注意发帖规范,标题尽量明确提问内容。
请勿再出现这样的帖子。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马