就是移位  2<<3是怎么移位的  还有2<<=3和2<<3有什么区别  麻烦详解  谢谢

解决方案 »

  1.   

    2<<3 2向左移3个位置
    2  2进制表示  10
    10  移动3个位置之后   10000  
    10000   转换成十进制   162<<=3 不行吧
    int num = 2;
    num<<=3;
    先将num向左移动3个位置  最后将结果赋值于num  相当于  -=  +=    
      

  2.   

    哈哈,<< 是向左移的意思,也就是每移一位,就相当于乘以2. 原理就是先将2转换成 二进制的 10,然后左移三位,这样机器处理时最快的。     10
     10 <-,不够得地方补0,就变成了  10000,也就是 16. 去复习下计算机原理 8421 码。2<<=3,没有这种写法吧。
      

  3.   

    我晕,现在CSDN的人气真好,刚讨论个问题回来,就有人回答了
      

  4.   

    2<<3:00000010---->00010000,1向右边移动三位
    “<<=”:操作符左边的值会移动由右边的值指定的位数,然后将得到的结果赋给左边的变量,所有2<<=3不行的,只能这样,int a=2; a <<= 3;
      

  5.   

    2<<3:00000010---->00010000,1向左边移动三位