萌萌的小白兔Q:
没什么好解析的,你想下,计算机从0数起的,0,1,2,3..........,
2的8次减去1=128-1=127,计算机不是从1数起的,而是从0数起来的,比如0~7,一共加起来是不是8个数字呢,零占位置的呢
CPU只能访问字节级别,虽然比字节还小是比特,信息最小单位是比特,但信息基本单位是字节
又因为二进制,8位比特位组成一个字节,除开最高位(计算机不会储存的),最左边第一位就是啦,那就只有剩下7位可以储存数据了,2的7次方=128,那就-1~-128,0~127(注意:*计算机从0数字开始数起的呀,我们平时用的是十进制,从1数起的呀)0~127(是不是加起来一共128个数字呢)-1~-128(是不是加起来一共128个数字呢)那就对了嘛,128+128=256,刚好是2的8次方啊
最小值:10000000(-128的补码)
最大值:01111111(+127的补码)
-128的二进制表示为:
原码: 10000000
反码: 11111111
补码: 10000000
127的二进制表示为:【反码补码针对负数有效,其它无效】
原码: 01111111
反码: 01111111
补码: 01111111
计算机是储存补码的,也就是以补码形式存储的
补码反码,针对负数的数字才有效的喔;整数的话,反码补码都是本身