关于位运算中左移和右移运算的问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于位运算中左移和右移运算的问题相关的知识,希望对你有一定的参考价值。
根据我之前的学习知识, << 和 >> 运算的规则如下:
<<:左移运算:就是把当前这个二进制数向左移动多少位,低位空出的补零。高位移出的舍弃
>>:右移运算:就是把当前这个二进制数向右移动多少位,高位空出的来,原来最高位是什么,就补什么,低位移除的舍弃。
看下面的问题:
public class Demo { public static void main(String[] args) { int a = 123; int b = a >> 32; int c = a >> 64; System.out.println(a); System.out.println(b); System.out.println(c); } }
输出结果:
123 123 123
看来这个结论并不是那么的正确, 根据试验, 这个根据数据类型的不同,int --> 32位一个周期; long --> 64位一个周期。如此循环,而不仅仅是简单的补位。
以上是关于关于位运算中左移和右移运算的问题的主要内容,如果未能解决你的问题,请参考以下文章