如图:32767与32767相加的结果怎么变成-2了?
郑志武
发布于2012-12-16 23:14
127
0
标签:
将这两个数相加起来超过整数的大值,但是我不知道如何去论证为何等于-2了?
这个详细计算的步骤可以跟我说一下吗?
图片说明: 1,相加截图
佳答案
这是整数的定义标示的。
高位为符号位,剩下的15位标示数值;
负数的高位为1,整数的高位为0;
负数的后15位为:取绝对值,按位取反,加1;
这样的话,就会出现,32767+32767=65534,16进制为0xfffe,
因此当做负数来处理,就是-2.
因为2的16进制标示为0x0002,按位取反为0xfffd,再加1为0xfffe,就是-2的16进制标示。