计算机int型数值范围

int型数值范围

在我们的计算机当中数据都是以01二进制形式存储,而整型变量int一般占的是4个字节,一个字节为8位,也就是32位。所以一个整型变量在计算机当中其实可以用32位的二进制来表示。比如1这个整型变量,用二进制可以表示为0000 0000 0000 0000 0000 0000 0000 0001 这就是正数1的原码(每8位为一个字节所以正好占4个字节,int是带符号的整型变量,最高位为符号位,也就是左数第一位) ,正整数用原码表示,负整数用补码表示。所以正整数在内存中的32位最大可以表示为0111 1111 1111 1111 1111 1111 1111 1111 也就是2^31-1=2147483647 因为是正整数,所以第一位符号位是0,从1开始所以要减去全0这种情况。
int类型的取值范围是-2^31 ~2^31-1,也就是-2147483648 ~ 2147483647 。在计算机二进制中符号为最高位占一位,负数用补码表示,正零负零都表示为0000 0000 0000 0000 0000 0000 0000 0000,因为二进制正数的补码为原码本身,负数零原码为1000 0000 0000 0000 0000 0000 0000 0000,反码为1111 1111 1111 1111 1111 1111 1111 1111,反码求法,最高符号位不变,其余部分取反。负数补码用原码取反码,最低位加1来求,最后都是0000 0000 0000 0000 0000 0000 0000 0000。
还有一种便于记忆的技巧,假设计算机是2位机,可以存储二进制00、10、01,转化为十进制最大数为3,也就是2^2 -1,以此类推32位机,int型存储范围中最大数值为2^32-1。
欢迎大家批评指正,探讨交流。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fzshuai25

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值