MySQL 中 int 最大值

栏目: 数据库 · 发布时间: 6年前

内容简介:前两天看到的问题,展开写一下。我们都知道计算机是以二进制为基础。存储的基本单位是复杂的内容就要用多 bit 来表示。

导语

前两天看到的问题,展开写一下。

字节

我们都知道计算机是以二进制为基础。存储的基本单位是 Bit ,也称为 比特二进制位 。1bit 可以表示 0 或者 1 两个数字,是可能存在的最小的信息量,任何小于1 bit 的内容都算不上信息。

复杂的内容就要用多 bit 来表示。 Byte ,也称为 字节 ,通常用作计量单位。1 byte 等于 8 bit,即 1 byte 可以表示 2 8 内容。

MySQL 中的字节

先说明一下,在 MySQL 中的整数类型,可以分为 unsignedsigned 两种,即无符号和有符号,具体内容这里不展开。 tinyint 的大小就是 1 byte,在 signed 类型能表示的数字以下表为例。(注:表格根据《编码》修改,仅做举例说明,不代表 MySQL 实际存储)

二进制数 十进制数
10000000 -128
10000001 -127
10000010 -126
10000011 -125
... ...
11111101 -3
11111110 -2
11111111 -1
00000000 0
00000001 1
00000010 2
... ...
011111100 124
011111101 125
011111110 126
011111111 127

int 最大值

在上表中我们看到,首位的 bit 用来表示符号,因此在 sigend 是少一位 bit 来存储内容。 int 是 4 byte,结合上述,可以得出 intsigned 最大值为

$$ 2^{31}-1=2147483647 $$

unsigned 中,无需首位 bit 表示符号,因此为

$$ 2^{32}-1=4294967295 $$

参考资料: 二进制比特字节补码


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Python编程

Python编程

[美]埃里克·马瑟斯 / 袁国忠 / 人民邮电出版社 / 2016-7-1 / CNY 89.00

本书是一本针对所有层次的Python 读者而作的Python 入门书。全书分两部分:第一部分介绍用Python 编程所必须了解的基本概念,包括matplotlib、NumPy 和Pygal 等强大的Python 库和工具介绍,以及列表、字典、if 语句、类、文件与异常、代码测试等内容;第二部分将理论付诸实践,讲解如何开发三个项目,包括简单的Python 2D 游戏开发如何利用数据生成交互式的信息图......一起来看看 《Python编程》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具