通过signed int 再提补码
有符号int (signed int
) 的取值范围 [-2^31, 2^31 - 1 ]
理解:
理解上记住一点:负数的话,用的是补码
1000 0000 0000 0000 0000 0000 0000 0000 # 表述 a
int 一般情况是4字节,32位
我们看 表述a
的补数
0111 1111 1111 1111 1111 1111 1111 1111 # 表述b
b这个东西还不足以 溢出,得加一,即 b+1 是 a 的补数
为了让补数的绝对值最大,那么原数的 字面 就得越小,于是,数值位
都是0 的情况,是最符合的,即表述a
是表达上的最小的情况。也就奠定了最小的原数形态。也就可以计算补数。
该补数算的话: 2 ^ 31 - 1 + 1 = 2 ^ 31
补数算是该数的绝对值。
于是该有符号数,可以表述为 - 2 ^ 31
于是最小值 就是 - 2 ^ 31
最大值很好理解,就是
0111 1111 1111 1111 1111 1111 1111 1111
表述为 2^31 - 1
端午三天都是高温40度,北京的太阳照的太强烈,一直宅着,
时光海海,祝我好运🍀