int的取值范围为什么是从-2^31到2^31-1以及mysql中int(N)

    int 4字节,1字节=8bit.计算机存储单位是位.左边的最高位为正负数的标志位,0表示整数,1表示是负数.
首先是最大值为什么是2^31-1.看下面的推理:
    0001-----> 2^1-1=1
    0011-----> 2^2-1=3
    0111-----> 2^3-1=7
    依次类推 公式:2^1的位数-1
    0111 1111 1111 1111 1111 1111 1111 1111—> 2^31-1≈21亿(最高位32位标志位,不参与运算)
所以int从正数来讲是1—2^31-1
同理从负数来讲是(-1)---------[-(2^31-1)].
然后说一下中间值0,根据符号位的不同,有+0和-0的区别
+0: 00000000 00000000 00000000 00000000
-0: 10000000 00000000 00000000 00000000
由于0只能使用一个,本着不浪费的原则,用+0表示0,那-0就可以在最小的基础上再表示一个数值,所以对于有符号型,最小值可以是-(2^31
-1)+1,所以int类型有符号型表示的范围就-2^31到
2^31-1.
    mysql中的int(N)表示数据的宽度,一般默认11,如果是11的话,有符号表示的范围就是int类型本身支持的数值范围大小:-2^31
到2^31-1.最大值:2147483648,总计11位

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

卖柴火的小伙子

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

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

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

打赏作者

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

抵扣说明:

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

余额充值