int变量占16位,数的范围是-(2^15)~(2^15-1)。为什么?
大家好!这是C语言教材里的内容。在整型变量一节里,unsigned [int]所占位数是16位,相应数的范围就是0~(2^16-1)。这个我能理解,因为2进制数,最多占16位,最大的就是2^16-1了。但是int所占位数也是16位,为什么最大的数却是(2^15-1)?莫非正号也占一位?另外,最小的数不也应该是-(2^15-1... 展开
其他答案
整型(int)在存储时最高位为符号位,以补码形式存储,所以最大数即为:0 111 1111 1111 1111 为2^15-1;最小数补码为:1 000 0000 0000 0000其原码为:- 1000 0000 0000 0000 为-2^15;只能说这么多了,你应该是入门,关于原码补码等在基础书上都有。
2011-01-25 04:58
来自北京市
赞(3)点赞赞(3)举报
免责声明:问答内容均来源于互联网用户,房天下对其内容不负责任,如有版权或其他问题可以联系房天下进行删除。




