概述
<< —— 有符号左移
>> —— 有符号右移
<<< —— 无符号左移
>>> —— 无符号右移
无符号移位(>>>)和有符号移位(>>)的区别是:
有符号位移运算时如果数字为正数时位移后在前面补0,为负数时则在位移后在前面补1
例:
100<<2
4的二进制为
0110 0100
移除最后两位
0110 01
在前面补两个零
0001 1001
100>>2==25
无符号移位运算时(>>>)如果数字为正数时移位后在前面补0,若为负数时移位后在前面补1
100>>>2
100的二进制是
0110 0100
向右移2位后为
0110 01
在前面补0得二进制为
0001 1001
100>>>2==25
如果为-100
-100的二进制为
1111111111111111111111111111111111111111111111111111111111111100
移除最后两位后
11111111111111111111111111111111111111111111111111111111111111
之后在前面补两位
1111111111111111111111111111111111111111111111111111111111111111
-100>>>2==-1
转载于:https://www.cnblogs.com/siduoxiaohua/p/10297961.html
最后
以上就是自信小蜜蜂为你收集整理的<<,>>(有符号位移)和>>>(无符号位移)的使用方法,及差别的全部内容,希望文章能够帮你解决<<,>>(有符号位移)和>>>(无符号位移)的使用方法,及差别所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复