一. 预备知识

1. bit与byte

1. bit(简记为 b)

    1 bit = 0 or 1 = one binary

2. byte(简记为 B)

    1 byte = 8 bits    1字节,8个二进制位元

2. 标准十进制度量体系倍率关系

符号 含义 十进制展开 指数表示
k (kilo) thousand (千) 1,000 1e+3
M (mega) million (百万) 1,000,000 1e+6
G (giga) billion (十亿) 1,000,000,000 1e+9
T (tera) trillion (万亿) 1,000,000,000,000 1e+12
  • (1e+3=1e3=1x10^3)

二. 两种数据存储容量计算方式

1. Microsoft Windows中表示数据存储容量(1,024倍)

本条以下KB、MB、GB……正确表示应该是KiB、MiB、GiB…… 原因:微软误用简写

  • 1 KB (Kilobyte) = 2^10 bytes 千字节
  • 1 MB (Megabyte) = 2^20 bytes 兆字节
  • 1 GB (Gigabyte = 2^30 bytes 千兆字节或吉字节
  • 1 TB (Terabyte) = 2^40 bytes 太字节
  • 1 PB (Petabyte) = 2^50 bytes
  • 1 EB (Exabyte) = 2^60 bytes
  • 1 ZB (Zettabyte) = 2^70 bytes
  • 1 YB (Yottabyte) = 2^80 bytes
  • 1 BB (Brontobyte) = 2^90 bytes

2. 硬盘生厂商(大多数)结合十进制来计算容量(1,000倍)

这就是在wondows操作系统中显示的容量比厂家标志的容量要小一些的原因(大概少7%,如64GB的U盘在windows上显示接近60GB)

  • 1 KB = 10^3 bytes = 1,000 bytes
  • 1 MB = 10^6 bytes = 1,000,000 bytes
  • 1 GB = 10^9 bytes = 1,000,000,000 bytes
  • 1 TB = 10^12 bytes = 1,000,000,000,000 bytes
  • 1 PB = 10^15 bytes
  • 1 EB = 10^18 bytes
  • 1 ZB = 10^21 bytes
  • 1 YB = 10^24 bytes
  • 1 BB = 10^27 bytes

3. 混淆起因

  • 由于以上两点原因,1 MB 可能就是1 MB (1,000倍的关系), 也可能是1 MiB(1,024倍的关系)。同样的有1 KB、1MB、1GB……根据具体情况区分就好

三. 正确表示

  • KiB = Kibibyte = Kilo binary byte
  • MiB = Mebibyte = Mega binary byte
  • GiB = Gibibyte = Giga binary byte
  • TiB = Tibibyte = Tera binary byte

  • 1 GB = 1,000 MB = 1,000,000 KB = 1,000,000,000 B (1,000倍)
  • 1 GiB = 1,024 MiB = 1,048,576 KiB = 107,374,1824 B (1,024倍)

除微软Windows操作系统外,其他操作系统基本上对于存储设备的容量计算方式与硬盘厂商一致,均为1GB = 1,000,000,000 bytes, 避免了计算和使用上的麻烦。linux系统更是对如GiB和GB有严格正确的区分,不会混淆二者。


(本文完)

硬盘存储计量单位KB、MB、GB大小换算的更多相关文章

  1. 计算机存储单位KB,MB,GB,TB,PB,EB,ZB,YB后面是什么?

    关于计算机存储单位KB,MB,GB,TB,PB,EB,ZB,YB后面是什么? 我们知道Kb是1000的1次方,所以 MB就是1000的2次方(106) GB就是1000的3次方(109) TB就是10 ...

  2. 计算机硬盘大小转换(B,KB,MB,GB,TB,PB之间的大小转换)

    程序猿都非常懒.你懂的! java程序猿在实际的开发中会遇到非常多的单位换算问题.今天我给大家带来的是关于计算机硬盘大小的换算.多数情况下.一般要求b,kb,mb,gb,tb,pb之间的大小转换,我们 ...

  3. Java计算机硬盘大小转换(B,KB,MB,GB,TB,PB之间的大小转换)

    程序员都很懒,你懂的! java程序员在实际的开发中会遇到很多的单位换算问题.今天我给大家带来的是关于计算机硬盘大小的换算.多数情况下,一般要求 b,kb,mb,gb,tb,pb之间的大小转换,我们都 ...

  4. 我的Android进阶之旅------>Java文件大小转换工具类 (B,KB,MB,GB,TB,PB之间的大小转换)

    Java文件大小转换工具类 (B,KB,MB,GB,TB,PB之间的大小转换) 有时候要做出如下所示的展示文件大小的效果时候,需要对文件大小进行转换,然后再进行相关的代码逻辑编写. 下面是一个Java ...

  5. 取文件的大小 (KB,MB,GB...)

    取文件的大小 (KB,MB,GB...) 2种方式: VB 和 C# 1,  VB Public Function GetFileSize(ByVal iFileSizeKB As Long) As ...

  6. KB/MB/GB。。单位换算

    今天遇到一个需求,需要把数据单位进行换算,记录一下.写的不好请勿见怪. function bytesToSize( bytes ) {//单位转化         var k = 1024,      ...

  7. 字节b换算kb/mb/gb/tb/pb

    public static string HumanReadableFilesize(double size) { string[] units = new string[] { "B&qu ...

  8. Bit,Bytes,KB,MB,GB,TB,PB,EB,ZB,YB

    Bit,Bytes,KB,MB,GB,TB,PB,EB,ZB,YB 汉字字符 2字节英文字符 1字节中文标点 2字节英文标点 1字节一个字节就是一个八位二进制数啊,2就是00000010,4就是000 ...

  9. JS数据容量单位转换(kb,mb,gb,tb)

    JS代码如下: var size = '8164674'; function bytesToSize(bytes) { if (bytes === 0) return '0 B'; var k = 1 ...

随机推荐

  1. TreeMap就这么简单【源码剖析】

    前言 声明,本文用得是jdk1.8 前面章节回顾: Collection总览 List集合就这么简单[源码剖析] Map集合.散列表.红黑树介绍 HashMap就是这么简单[源码剖析] LinkedH ...

  2. POJ-2349 Arctic Network---MST的第m长的边

    题目链接: https://vjudge.net/problem/POJ-2349 题目大意: 要在n个节点之间建立通信网络,其中m个节点可以用卫星直接连接,剩下的节点都要用线路连接,求剩下这些线路中 ...

  3. Tensorflow会话Session

    转载自: http://blog.csdn.net/Hanging_Gardens/article/details/72784392 https://www.cnblogs.com/hypnus-ly ...

  4. netcore webapi帮助文档设置

    如何建 .netcore webapi 项目这个就不说了,这个都没有没必要看下去. 我这里是.netcore 2.0,虽然没测过1.0的,但想来差不多. 1.Nuget Packages安装,使用程序 ...

  5. CF 472 div1 D. Contact ATC

    #include <algorithm> #include <cmath> #include <cstdio> #include <cstring> # ...

  6. Java 线程池原理分析

    1.简介 线程池可以简单看做是一组线程的集合,通过使用线程池,我们可以方便的复用线程,避免了频繁创建和销毁线程所带来的开销.在应用上,线程池可应用在后端相关服务中.比如 Web 服务器,数据库服务器等 ...

  7. css 相关算法

    计算 em 目标像素 除 基准像素 等于 em倍数结果: 14 / 16 = 0.875em 0.875倍也就是 14 像素 计算百分比 目标像素 除 父类总宽度 乘 一百:90 / 200 * 10 ...

  8. [LeetCode] Number of Distinct Islands 不同岛屿的个数

    Given a non-empty 2D array grid of 0's and 1's, an island is a group of 1's (representing land) conn ...

  9. [LeetCode] Array Partition I 数组分割之一

    Given an array of 2n integers, your task is to group these integers into n pairs of integer, say (a1 ...

  10. testng中使用reportng报告

    1.pom.xml文件中添加依赖,重构一下项目(mvn compile) <dependency> <groupId>org.uncommons</groupId> ...