码迷,mamicode.com
首页 > 其他好文 > 详细

一些基础问题3二进制运算

时间:2019-04-06 17:04:21      阅读:111      评论:0      收藏:0      [点我收藏+]

标签:指定   反码   details   http   异或   static   detail   log   定位   

&与

规则:0&0=0、0&1=0、1&1=1
例如:6&3=2即0000 0110&0000 0011=0000 0010即2
用法:1.清零,即x&000;2.取一个数的指定位,如取x的低4位,即x&0000 1111

如何判断一个整数是不是奇数----最佳方式
http://blog.csdn.net/wenpengy/article/details/4772280

public static boolean isOdd(int i){
 return (i & 1) != 0 ;
}

|或

规则:0|0=0、0|1=1、1|1=1
例如:6|3=7,即0000 0110&0000 0011=0000 0111即7
用法:使一个数某些位置变1

^异或

规则:0^0=0、0^1=1、1^1=0值不同才是1
例如:6^3=7,即0000 0110^0000 0011=0000 0101即5
用法:1.翻转一个数的指定位,如翻转x的低4位,即x^0000 1111;
2.保留原值,如x^0000 0000
技术图片

~取反

规则:~0=1、~1=0
用法:原码与反码(反码+1得到补码)

<<左移

规则:去掉高n位,低位补0
例如:3<<2=12,即0000 0011 << 2=0000 1100即12,相当于3*2^2=12
用法:

>>右移

规则:去掉低n位,高位补0
例如:3>>1=12,即0000 0011 >>1=0000 0001即1,相当于3/2=1
用法:

>>>无符号右移

规则:
例如:3>>>1=12,即0000 0011 >>>1=0000 0001即1,相当于3/2=1
用法:

一些基础问题3二进制运算

标签:指定   反码   details   http   异或   static   detail   log   定位   

原文地址:https://www.cnblogs.com/xiaobingzi/p/10661931.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!