计算机的补码

来源:百度知道 编辑:UC知道 时间:2024/06/15 01:54:55
为什么1000000000000000是-32768的补码?谁能告诉我它是怎么得来的?

由于基本整形的范围是-32768---32767,显然32768是超过范围的

首先,计算32767的二进制的值0111,1111,1111,1111
那么-32767的二进制值为1111,1111,1111,1111
-32768的值为-32767-1
-1的补码为1111,1111,1111,1111
-32767的补码为1000,0000,0000,0001
-32768的二进制为1000,0000,0000,0000(原因最高位为符号位,实际存放空间为15位,溢出的结果)
反码1111,1111,1111,1111
补码1000,0000,0000,0000(同上,又一次溢出)