信息单位
理论
在整个生命过程中,我们总会找到一些需要衡量的东西:我们需要为家人烹饪的食物量、你想在房间里放的沙发的长度和宽度、我们的体重和身高。后者尤其令人兴奋:得知自己在短短一年内长高了整整 2 英寸,这真的很酷!
每次测量都需要一台仪器和自己的 测量单位比如,体重用公斤(或磅)来计量,时间用钟表以秒为单位来计量,等等。但是,信息又如何计量呢?
§1. 位:信息的最小单位
输入计算机的信息应具体、明确。长期以来,人们一直在使用密码。其中最简单、最方便的是数字。从花名到星期几的任何信息都可以以数字的形式呈现。当使用传统计算机处理时,数据以数字形式编码并存储在文件中,最终由决定计算机运行速度的电信号表示。
为了便于区分,经典电子计算机中采用两级信号。其中一级对应于 1,另一个 0计算机上的任何字母、声音或图像都由一组数字表示。数字 1 和0 叫做二进制这些是构成计算机理解和使用的语言的符号。计算机上的任何信息都由二进制数字表示: 1, 意义 “有信号” 或者“信号很强” 和0, 意义 “没信号” 或者“信号弱”.
信息的最小单位是 位(b).
机器二进制代码的每一位都携带着相当于一位的信息量。它只能取两个值之一: 1 或者0用比特来测量信息非常不方便,因为数字太大了。
§2. 字节:8 个比特的序列
就像人们不以克为单位来考虑船舶的质量一样,人们也发明了更大、更方便的单位来测量信息。
信息处理在处理器中进行。这是一种可以同时处理多个位(8、16、32、64……)的设备。如今,大多数计算机同时处理 8 位信息,因此我们需要一个新的测量单位,称为 字节(B), 意思是 8 位.
位标记很容易与字节标记混淆。请注意,位数的缩写使用小写字母 “b”,而字节则用大写字母表示 “B”.
§3. 大信息单位
鉴于现代计算机的先进功能,存储容量已经扩大到可以容纳更大的信息单元,超越了传统的字节规模。
计算机行业历来使用单位 千字节, 兆字节, 和 技嘉 在至少两个略有不同的测量系统中,它们彼此略有矛盾。
- 第一个是基于十进制的系统,它使用十的幂的字节: 千字节 (10^3 字节),兆字节 (10^6 字节),技嘉 (10^9 字节)等等。这些单位由国际单位制 (国际标准)。
- 第二个系统是基于二进制的系统,使用 2 的幂的字节: 千字节 (2^10 字节),兆字节 (2^20 字节),吉比字节 (2^30 字节) 等等。该系统被广泛用于描述计算机内存。
为了解决这一混乱, 国际电工委员会 (IEC)建议使用前缀公斤, 兆, 和 千兆 仅适用于十进制系统并使用新前缀吉备, 梅比, 和 吉比 二进制系统。这里双 方法双零: 千字节 是基洛 双零 字节.
以下是按照现代国际标准列出的常用信息单位的表格。
SI 公制 | 象征 | 十的幂 | IEC 公制 | 象征 | 2 的幂 |
---|---|---|---|---|---|
千字节 | KB | 10^3亿(1000亿) | 千比字节 | 基布 | 2^10 B(或 1024 B) |
兆字节 | MB | 10^6B(1000KB) | 美比字节 | 密布 | 2^20 B(或 1024 KiB) |
技嘉 | 英国 | 10^9B(1000MB) | 吉比特 | 吉布 | 2^30 B(或 1024 MiB) |
太字节 | 结核病 | 10^12B(1000GB) | 太比字节 | 硼化钛 | 2^40 B(或 1024 GiB) |
PB 级 | 铅 | 10^15B(1000TB) | 派比字节 | 丙二醛 | 2^50 B(或 1024 TiB) |
当然,这里并没有列出所有的计量单位。我们希望这种分类不会让您感到困惑。
请注意,有些人和组织仍然更喜欢 公斤, 兆, 和 千兆 描述 2 的幂。在本课程中,我们遵循 IEC 的建议,并使用现代前缀吉备, 梅比, 和 吉比.
§4. 计量单位换算
为了巩固你新获得的知识,让我们来看一个相当典型的问题的解决方案,你需要将 1 GiB 转换为 KiB。当我们将较大的单位转换为较小的单位时,我们需要求助于一种称为乘法的算术运算:
1 GiB = 1KiB * 1024 * 1024 = 1048576 KiB
因此,当你需要将小单位转换为大单位时,你会使用除法。让我们尝试转换 16384 位到基布:
16384 位 = (16384 / 8) / 1024 = 2 KiB
如果你想转换 1 GB 到KB,你应该把这个数字乘以一千两次:
1 GB = 1kB * 1000 * 1000 = 1000000 kB
恭喜你,现在你已经学习了计算机科学的基本主题之一,并准备达到新的令人眼花缭乱的知识高度。
§5. 结论
总结一下:
- 信息的最小单位是比特。
- 一个字节由8个位组成。
- 为了计算机科学的方便,我们使用基于二进制的信息单位,例如字节、千比字节、兆比字节等。
- 要将 1 千字节转换为字节,我们需要将 1 乘以 210 要转换 1 兆字节,我们需要将 1 乘以220, ETC。
您还可以查看 hyperskill.org 上的课程.
实践任务及答案
给出了任务和答案选项。正确选项以 蓝色的 颜色。
№1. 将字节转换为位
问题: 12个字节有多少位?
12 个字节有多少位?如果答案是小数,则用点符号分隔各部分:
答案:输入简短的文字:96
№2. 从小到大
问题: 将信息单位从小到大进行排序。最大的单位应该位于列表的底部。
按正确顺序排列物品:
- 少量
- 字节
- 千字节
- 兆字节
№3. 将位转换为字节
问题: 256 位有多少个字节?如果答案是小数,则用点符号分隔各部分。
输入简短文本:32
№4. 信息的最小单位
问题: 信息的最小单位叫什么?
从列表中选择一个选项:
- 千字节
- 字节
- 微字节
- 位✔
- 微型比特
- 咬
- 迷你比特
№5. 声明
问题: 选择关于基于十进制和基于二进制的系统的正确陈述。
从列表中选择一个或多个选项:
- 基于十进制的系统使用千比字节、兆比字节、吉比字节
- 十进制系统使用千字节、兆字节、千兆字节✔
- 基于二进制的系统使用 kibibyte、mebibyte、gibibyte ✔
- 二进制系统使用千字节、兆字节、千兆字节
№6. 将字节转换为千字节
问题: 1536 B 中有多少 KiB?如果答案是小数,请用点符号分隔各部分。[提示]记住 KiB 和 KB 之间的区别。[/提示]
输入简短文本:1.5
№7. 将 GiB 转换为 MiB
问题: 0.5 GiB 有多少 MiB?
输入简短文本:512
第 8 号 1 和 0
问题: 传统计算机中的任何信息都用二进制数字表示:1 和 0。但它们代表什么?选择所有正确的陈述。
从列表中选择一个或多个选项:
- 1 不用于呈现信息
- 0 表示“无信号”✔
- 0 不用于呈现信息
- 0 表示“有信号”
- 1 表示“无信号”
- 1 表示“有信号”✔
№9. 信息单位
问题: 将信息单位与其值进行匹配:
匹配左列和右列的项目:
- 1 千字节 = 1000 字节
- 1 兆字节 = 1000 千字节
- 1 千兆字节 = 1000 兆字节
- 1 兆兆字节 = 1000 千兆字节
- 1 PB = 1000 TB
№10. 在函数中将字节转换为千字节
嗨!这个问题可能有点难以预测,但请尝试一下,然后告诉我们你的表现!
问题: 给定一定数量的字节,您的任务是将它们转换为千字节。但是,执行此操作的函数似乎尚未完成。您的任务是填写提供的 Python 函数中的空白,以准确地将给定的字节数转换为千字节。此函数以整数作为参数,表示字节数,并返回千字节值的格式化字符串表示形式。
使用相关代码元素填补空白:
def bytes_to_kilobytes(字节):
返回 f"{bytes / 1024} 千字节"
打印(字节到千字节(5000))
变体:字节、1024、千字节。
№11. 完成文件大小转换功能
嗨!这个问题可能有点难以预测,但请尝试一下,然后告诉我们你的表现!
问题: 您已收到一段代码片段,用于将文件大小从字节转换为千字节并打印结果。但是,代码的某些部分缺失。您的任务是确定哪些值或代码语句将正确填充代码中的空白(标有“▭”),以便函数正常运行。请记住,1 千字节等于 1024 字节:
使用相关代码元素填补空白:
def convert_bytes_to_kilobytes():
千字节 = 字节 /
返回 str(千字节) + " "
字节大小 = 5120
打印(将字节转换为千字节(字节大小))
变体:KB、字节、1024。
解决方案:
填补空白的正确代码是:
def convert_bytes_to_kilobytes(字节):
千字节 = 字节 / 1024
返回 str(千字节) + " KB"
字节大小 = 5120
打印(将字节转换为千字节(字节大小))
解释。 这将定义一个函数 convert_bytes_to_kilobytes(),该函数接受一个字节参数并以附加“KB”的字符串形式返回以千字节为单位的大小。该函数通过将字节数除以 1024 来计算以千字节为单位的大小。bytes_size 变量设置为 5120,这是要转换为千字节的字节数。最后,print() 函数用于使用 bytes_size 参数调用 convert_bytes_to_kilobytes() 并打印结果。