关于二进制位移“>>”和“>>>”的区别小结
来源:互联网 发布:事业单位会计软件 编辑:程序博客网 时间:2024/06/09 00:42
1.“>>”即带符号位移
我们将-20右移四位结果为-2
public static void main(String[] args) { int x=-20; System.out.println(">>"+(x>>4)); //10000000 00000000 00000000 00010100(原) //11111111 11111111 11111111 11101011(反) //11111111 11111111 11111111 11101100(补) //----带符号右移4位---->后a的值 //11111111 11111111 11111111 11111110(补码)-> //11111111 11111111 11111111 11111101(反码)-> //10000000 00000000 00000000 00000010(原码) }
2.“>>>”右移时,空余位都填充0
最后的结果是268435454
public static void main(String[] args) { int x=-20; System.out.println(">>>"+(x>>>4)); //10000000 00000000 00000000 00010100(原) //11111111 11111111 11111111 11101011(反) //11111111 11111111 11111111 11101100(补) //----不带符号右移4位---->b的值 //00001111 11111111 11111111 11111110(补码) //00001111 11111111 11111111 11111110(反码) //00001111 11111111 11111111 11111110(原码) }
总结:可以看出来,两个值是不同的,如果这里把位移后的接受值强转为byte类型,结果相会相同。
阅读全文
0 0
- 关于二进制位移“>>”和“>>>”的区别小结
- PHP的二进制位移操作
- 关于二进制和位运算(小结)
- 二进制位移
- 逻辑位移与算数位移的区别
- 使用位移转换二进制和十进制
- c语言中关于&和*的区别的一点小结
- 循环位移二进制数
- 法线贴图和位移贴图区别
- 位移和时间的定律
- 关于文本模式和二进制模式对文件进行操作的区别
- 关于ftp中文本模式和二进制模式上传文件的区别
- 关于ftp中文本模式和二进制模式上传文件的区别
- 关于左位移,右位移
- 关于C语言的位移操作
- 关于C语言的位移操作
- java关于位移运算的面试题
- 文本格式和二进制格式的区别
- Oracle 系统权限、对象权限、角色权限
- codeforces 276D Little Girl and Maximum XOR(区间最大异或值--技巧)【模板】
- 坑题
- php ajax 点击'查看更多'小功能
- 51nod 1396 还是01串 【思维题】
- 关于二进制位移“>>”和“>>>”的区别小结
- 作业3
- C#基础(3)——异常捕获与断点调试
- 分布式ID生成器
- nodejs异常之-Error: listen EACCES 127.0.0.1:8000
- 牛客网初级项目课第一节
- linux shell之tput和stty
- HashMap、HashTable、ConcurrentHashMap
- Binary Search:81. Search in Rotated Sorted Array II