计算机原理
题目一:请说出”-1 >>> -3”的结果,并说明原理。
提示:本题其实是考察对“移位为负数”这种情况的理解。
答案:若移位值为负数,则实际的移位个数不是后面的直接数字,而是直接数字的最低n位所代表的值。对于int型,n为5;对于long型,n为6。之所以这样,是因为5位最大表示31,移位超过31位对int整数是无效的,long同理。
源码扩展:参见EnumSet的complement方法
题目一:请说出”-1 >>> -3”的结果,并说明原理。
提示:本题其实是考察对“移位为负数”这种情况的理解。
答案:若移位值为负数,则实际的移位个数不是后面的直接数字,而是直接数字的最低n位所代表的值。对于int型,n为5;对于long型,n为6。之所以这样,是因为5位最大表示31,移位超过31位对int整数是无效的,long同理。
源码扩展:参见EnumSet的complement方法