码迷,mamicode.com
首页 > 编程语言 > 详细

Java 中的位移运算

时间:2014-12-02 11:49:17      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:位移运算

位移运算符就是在二进制的基础上对数字进行平移。按照平移的方向和填充数字的规则分为三种:<<(左移)、>>(带符号右移)和>>>(无符号右移)。

计算规则如下:

左移n位相当于乘以2的n次方。

右移n位相当于除以2的n次方。这里是取商哈,余数就不要了。

③ >>>(无符号右移)

   运算规则:

   按二进制形式把所有的数字向右移动对应位数,低位移出(舍弃),高位的空位补零。对于正数来说和带符号右移相同,对于负数来说不同。 其他结构和>>相似。

示例

  1. long a = 0x3;  
  2. long b = 30;  
  3. long longLeft  = a << b;  
  4. System.out.println(longLeft);  
  5. System.out.println(0x3 << 30);  
  6. System.out.println("-----");  
  7. System.out.println(Math.pow(-231));  
  8. System.out.println(Integer.MIN_VALUE);  
  9. System.out.println("-----");  
  10. System.out.println(Math.pow(231) - 1);  
  11. System.out.println(Integer.MAX_VALUE);  
结果

  1. 3221225472  
  2. -1073741824  
  3. -----  
  4. -2.147483648E9  
  5. -2147483648  
  6. -----  
  7. 2.147483647E9  
  8. 2147483647  



Java 中的位移运算

标签:位移运算

原文地址:http://blog.csdn.net/shineflowers/article/details/41675823

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