00001=2^0
<<m之后
m=2
00100
=2^2=4
en '
“<<”为左移符
(相应的“<<”为右移符)
——————————————————————————————————————————————-——————————————————————————————
所以
1<<m相当于2^m
因为在二进制中
1(十进制)=1(二进制)即2^0
实际上在二进制中
例如4;
00100
1在第3位上,
因为2^2=4
所以2^3-1=2^2=4
然后
类推一下可知
2^n-1
所以对于2^m次方来说1的位置决定了m的大小
1左移m位
1原在第1位上,移动m位则1在m+1位上,然后2^(m+1)-1=2^m
另外
a<<1 代表着左移计算,单纯的计算,并不改变a的值
a<<=1 则意味着先对a进行左移计算,然后把计算的结果赋值给a,会改变a的值。
<<m之后
m=2
00100
=2^2=4
en '
“<<”为左移符
(相应的“<<”为右移符)
——————————————————————————————————————————————-——————————————————————————————
所以
1<<m相当于2^m
因为在二进制中
1(十进制)=1(二进制)即2^0
实际上在二进制中
例如4;
00100
1在第3位上,
因为2^2=4
所以2^3-1=2^2=4
然后
类推一下可知
2^n-1
所以对于2^m次方来说1的位置决定了m的大小
1左移m位
1原在第1位上,移动m位则1在m+1位上,然后2^(m+1)-1=2^m
另外
a<<1 代表着左移计算,单纯的计算,并不改变a的值
a<<=1 则意味着先对a进行左移计算,然后把计算的结果赋值给a,会改变a的值。