永发信息网

-32768换成二进制占了符号位了,为何不是-32767?

答案:2  悬赏:50  手机版
解决时间 2021-11-17 08:59
  • 提问者网友:戎马万世
  • 2021-11-17 02:10
-32768换成二进制占了符号位了,为何不是-32767?
最佳答案
  • 五星知识达人网友:话散在刀尖上
  • 2021-11-17 03:12
在16位机上,整数类型占2个字节,有符号数的表示范围为:-32768~32767
二进制表示数据,用首位表示符号位,其余位来表示数值,这种方法表示出来的数称为原码。 但这样会出现“正0”和“负0”数据,与现实中数的应用不符,而且,用原码也不方便计算机进行运算。所以,科学家们提出了补码概念,用来在计算机中存储整数。
规定:
    正数的补码与原码相同
    0的表示形式为000...000 (16位全是0)
    负数的补码为反码加1
按此规定,“负0”就变成了-32768
-1  = 1111111111111111
-2 =  1111111111111110
。。。。
-32768=1000000000000000
这是推算的结果,也可以说是规定的结果
全部回答
  • 1楼网友:平生事
  • 2021-11-17 04:08
你算错了吧

-32768的补码是 正好是(按照16位来算)

1000,0000,0000,0000

补码是绝对值的二进制每一位取反在加1

-32768绝对值 是 32678
二进制形式是
1000,0000,0000,0000
每位取反
变成0
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯