关于java的位运算符:<<与>>>
来源:互联网 发布:阿里云域名接入备案 编辑:程序博客网 时间:2024/05/18 09:13
今天,突然想起java位运算符>>>的描述:用0填充最高位;>>:用符号位填充最高位。
于是乎有了这样的问题
int a = -1;int c = a>>>1;这时候c的值是多少呢?
当然不可能是0啦,答案是:
2147483647原因是在计算机系统中,数值一律用补码表示和储存,这时候-1 = 1111 1111;
则 a = 11111111 11111111 11111111 11111111;
右移一位,最高位以0补齐,则 a = 01111111 11111111 11111111 11111111;
此时 a =2147483647。
此时再将 a 的值左移一位,则 a = 11111111 11111111 11111111 11111110;
刚好是-2的补码;
0 0
- 关于java的位运算符:<<与>>>
- 关于java的位运算
- 关于java的位运算
- 关于java位运算符&,~,^,|,<<,>>的整理(包含二进制与十进制的转换)
- 关于java位运算
- 关于JAVA 位运算“<<” ">>"
- 关于Java位运算符的使用_2013_09_17-23:36
- 关于java的按位运算符算法
- 关于JAVA中位运算的学习
- 关于java中位运算的研究
- Java的位运算符
- java的位运算符
- java的位运算符
- Java的位运算符
- java的位运算符
- Java的位运算符
- JAVA的位运算符<<
- JAVA的位运算与二进制转换
- Xcode8 注释 快捷键
- flyway4-0配置
- Java判断字符是否是中文
- Walk
- python实战小程序——redis数据库、随机数的生成
- 关于java的位运算符:<<与>>>
- gc状态查询(java)
- UICollectionView的基本使用
- POSTMAN的安装
- noConflict()
- mysql查询字段值为空的记录
- Java判断String是否是中文,并把中文转换成Unicode
- Perl学习(十二)——数组定义操作总结
- 内核双向循环链表介绍