新手问题:
请问二进制的8右移30位后得到的是什么
希望附加推算过程
谢谢

解决方案 »

  1.   

    java输出的话应该是0就是把
    0000 1000
    内存中的1向右移30个位置
    剩下的全是0了。
      

  2.   

    首先说一下二进制数是0,1组成的,8不是二进制的
    用C实现的代码:
    #include <stdio.h>
    int main()
    {
    int B=8;
    printf("B>>30=%u\n",B>>30);  // 输出0
    }
    用java实现的代码:
    public class Test6
    {
    public static void main(String [] args)
    {
    int i=8;
    int j=i>>30;
    System.out.println(j); //输出的是0
    }
    }