byte(128)为什么是-128?

众所周知,计算机中存储的都是二进制的补码,而原码,反码,补码的关系如下: 网上大部分的资料都是如此讲述,而实际上,负数的补码还可以这么求(必须确定是负数): 将负数的绝对值的原码整体(包括符号位)取反,再整体加一 虽然看起来两个方差不多,但是用第二种方式却能很好避免一些问题,请看下面这两题 System.out.println((byte)130);//打印-126 不管用哪种方法来算,都能算到,
相关文章
相关标签/搜索