您的位置:首页 > 编程语言 > Java开发

进制转换与Java的位运算操作

2017-05-26 09:35 337 查看

进制转换

十进制转二进制:

0=0
,
1=1
,
2=10
,
3=11
,
4=100
,
8=1000
,
16=10000


总结:
16=Math.pow(2,4)
,所以补4个0,
30=Math.pow(2,4)+Math.pow(2,3)+Math.pow(2,2)+Math.pow(2,1)=16+8+4+2=10000+1000+100+10=11110


位运算操作

用最有效率的方法算出2乘以8等于几?

使用位运算
2<<3
,因为将一个数左移 n 位,就相当于乘以了2的 n 次方,那么,一个数乘以8只要将其左移3位即可,而位运算 cpu 直接支持的,效率最高,所以,2乘以8等於几的最有效率的方法是
2 << 3
;或者
8<<1
.

计算过程:

2<<3
: 2的二进制是
10
,乘相当于向左移动,除相当于向右移动,
10
向左移动3位是
10 000
,就是将
10
左移,右边补空缺3位.

*
8<<1
:*8的二进制是
1000
,向左移动1位是
1000 0
.

16除以4得多少?

16转二进制位
10000
,4为2的2次方,所以相当于
16>>2
,那么
10000
整体向右移动2位为
100
.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java
相关文章推荐