前言
XX位二进制数,表示的数的范围是多少呢,疑惑。
一 16位数,表示范围。
16位无符号二进制数能表示2^16个数,表示范围是0~ 65535;而有符号16位二进制,有1位符号位,表示范围是-32768~+32767。
之所以是65535,是因为0也是一位,0-65535就是65536个了,即2^16
有符号就是有一位是符号位,当符号位为0时,有15位表示数,0-32767共32768个。当符号位为1时,-32768
二 32位补码表示的数,1位符号位,数的表示范围
因为十进制带符号,所以有一位符号位,数值范围是31位
最大正整数 2^32-1
最大负整数 - (2^32-1)
所以它的范围是-(2^32-1)
到2^32-1
2^31
是它的最大位表示的数,最大整数是31位全为1,所以是2^32-1
最大正整数
2^31-1
最大负整数- (2^31)
所以它的范围是-(2^31)
到2^31-1
参考资料
[1] bat67. 8位有符号数的补码表示范围. CSDN博客. 2017.
https://blog.csdn.net/bat67/article/details/75194627