bit比特, Byte字节,基础知识

作者 : 开心源码 本文共742个字,预计阅读时间需要2分钟 发布时间: 2022-05-12 共166人阅读

在计算机的存储领域中经常会看到 100Mb和100MB,这样的写法有什么区别?计算机中int是32位还是64位存储说的又是什么呢?这些概念都非常简单,但是时间长了就会搞混,这里简单的讲解一下。

计算机底层存储是二进制的,也就是 10011001这样的形式,那么最底层的存储单位就是bit

1 bit (比特)可以表示 [01] ,转换成整型 0 – 1 。 21 – 1
2 bit (比特)可以表示 [01][01], 转换成整型 0 – 3。22 – 1
n bit (比特) ….. 转换成整型 2n -1

由于历史传承和使用方便优雅等起因(具体可以看《编码》这本书),定义 1 Byte = 8 bit

1 Byte = 8 bit = 28 -1 = 255(插一句,ip 不就是 255.255.255.255 4个 Byte 吗)

那么32位int 什么意思呢?就是4 Byte(4 * 8 = 32 bit ) 长度的整型 。
那么64位int 什么意思呢?就是8 Byte (8 * 8 = 64 bit)长度的整型 。

4 Byte int长度 为 232 – 1 = 4294967295
8 Byte int长度 为 264 – 1 = 18446744073709551999

写到这里都是大家应该会发现这表示的都是正整数,那么负整数怎样办呢?
利用了bit 中 最左边的一位表示正负 0表示+ 1表示 -

那么我们可以得出,

  • 无符号下
    32位 int 232 – 1 = 4294967295
    64位 264 – 1 = 18446744073709551999
  • 有符号
    32位 int 231 – 1 = 2147483647
    64位 int 263 – 1 = 9223372036854775999

有了基础的知识即可以得出(这里用的是简洁写法 将 1024 简化成 1000)
1KB = 1000 * 1 Byte = 1000 * 8 * bit = 8Kb
1MB = 1000 * 1000 * 1 Byte = 1000 * 1000 * 8 * bit = 8Mb

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » bit比特, Byte字节,基础知识

发表回复