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

java中的位移运算符

2016-07-24 17:55 281 查看
  java中位移运算符有:<<(左移),  >>(右移),>>>(无符号右移)

左移(左边最高位丢弃,右边补齐0)

System.out.println(3<<2);

3的补码为:

00000000 00000000 00000000 00000011

左移两位:

 (00)000000 00000000 00000000 0000001100(红色为丢弃的部分,绿色为补齐的部分)

则结果为;

00000000 00000000 00000000 00001100

转化为十进制为12:

结论:该数值位移为该数值位乘与2的位移次幂 3*2^2=12;

右移:(右边最高位丢弃,左边补齐1)

结论:该数值位移为该数值位除以与2的位移次幂 。


无符号右移:(右边最高位丢弃,左边补齐0)

结论:正数时,与右移一致;负数时,像第一个一步一步推算就可以算出来:




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: