当前位置: 首页 > news >正文

[oeasy]python0088_字节_Byte_存储单位_KB_MB_GB_TB

编码进化

回忆上次内容

  • 上次 回顾了 字符大战的结果
    • ibm 曾经的 EBCDIC 由于字符不连续的隐患
      • 导致后续 出现 无数问题
      • 无法补救
  • 7-bit 的 ASA X3.4-1963
    • 字母序号连续
      • 比较字符时 效率高
      • 判断字符 是否是字母 也很容易
    • 获得了 IBM以外公司的 支持

图片描述

  • 为什么 ASA X3.4-1963 是 7-bit 编码?
    • 8-bit 不是才 正好一个字节 吗?🤔

ASA X3.4-1963 文档

  • 注意这篇文档
    • 通篇提到6-bit、7-bit
  • 但是
    • 没有提到Byte

图片描述

  • 那时候
    • 还有没有 Byte这个词

bite

  • 1956年
    • ibm工程师 Werner Buchholz
    • 第一次 使用了bite 来描述8-bit
    • 开音节读作[bait]

图片描述

  • bite 在1956年 太过超前

时代

  • 毕竟 当时的计算机
    • 还处于 从模拟 到数字 的过程中
  • 计算机的 输出设备是
    • 指示灯
    • 电压表
    • 示波器

图片描述

  • bite这个词
    • 流传于Rand、 MIT、IBM
  • 为了 和bit 区分
    • bite 的拼写
      • 演化成 Byte

ASA X3.4-1963 发布

  • IBM 编码演化

    • BCD码 4-bit
      • 发展到BCDIC 6-bit
        • 包含了字符
  • 网络通信 让 计算机 不再是 孤岛

    • IBM之外的其他公司 想要统一通信标准
      • 到 7-bit的 ASA X3.4-1963

图片描述

  • IBM 之外的公司 从产品层面跟进
    • IBM 想要 主导标准

词汇出现

  • 1964年
    • ibm 发布 System/360
    • 存储容量单位 为 Byte (8-bit)
      • 首款机型 4096 Byte

图片描述

  • Byte 这个单词
    • 作为 营销话语中的 概念
    • 开始传播

孤注一掷

  • 为了配合 8-bit 的 System/360
    • 编码规则 从6-bit的 BCDIC
      • 直接跳到 8-bit的 EBCDIC

图片描述

  • 这是 IBM最后的倔强

终局

  • 两年之后 1965年
    • ibm最新机器
      • 也开始 使用 ASA X3.4-1963
      • 编码统一到了 7-bit的 ASA X3.4-1963
        • 也就是 后来的ASCII
        • 字符编码大战尘埃落定

图片描述

  • 可是为什么 ASCII编码 用 7-bit
    • 1个字节 却要 8-bit 呢?
      • 7-bit 不是 刚好放下 吗?

1个字节8位

  • 我们 来看看 Bemer的个人网站
  • 介绍 字符编码 进化过程
    • 5-bit的博多码
    • 6-bit的BCDIC
    • 7-bit的ASCII
    • 8-bit的EBCDIC

图片描述

  • 为什么 字节是 8-bit
    • 而不是 7-bit 呢?
  • Bemer 的说法是
    • 2次幂的 魔法
    • 8 = 23

2次幂的魔法

  • 计算机 只有 两根手指
  • 每根 手指
    • 可以代表 (10)2进制种状态

图片描述

  • 就像 电路 只有

图片描述

  • 电灯 只有

手指 增多

  • (10)2进制根手指
    • 2根手指
      • 可以 代表(100)2进制种状态
        • 4种状态

图片描述

  • 这就是 2-4 译码器(decoder)
  • 如果 有更多手指 呢?

3-8 译码器

  • (11)2进制根手指
    • 3根手指
      • 可以代表 (1000)2进制种状态
        • 8种状态
  • 这就是 3-8译码器(decoder)
    • 或者说是 3-8解码器

图片描述

  • 再往后呢?

4-bit 寻址空间

  • (100)2进制根手指
    • 4根手指
      • 可以代表(10000)2进制种状态
        • 16种状态

图片描述

  • 再往上呢?😁

8-bit 寻址空间

  • 从4-bit 直接跳到 8-bit

图片描述

  • (1000)2进制根手指
    • 8根手指
      • 可以代表(100000000)2进制种状态
        • 256种状态
  • 8-bit的cpu
    • 直接寻址空间 可达256个Byte
  • 16-bit的寄存器
    • 直接寻址空间 64 x 1024 Byte
      • 相当于 64KByte
  • 随着 计算机字长的增加
    • 存储单位 在指数级增长

更多存储单位

  • 1 KB = 1024 Byte
  • 1 GB = 1024 KB
  • 1 TB = 1024 GB

图片描述

  • 这都是 基于Byte的单位
  • Byte 就是 8-bit
  • 但是7-bit的ASCII字符
    • 怎么放入 8-bit 的 Byte呢?

8-bit

  • ascii 的位置
    • ascii大小写字母之间只差 1 位(bit)
  • 最前面的 1-bit
    • 是 标志位
  • 后面的 7-bit
    • 是 ascii 字符数值

图片描述

  • 如果 标志位 是0
    • 那么 这个字符 就是ascii字符
  • ascii的字符范围
    • 0 - 127
  • ASA X3.4-1963 就这样
    • 成了 ASA X3.4-1965

总结

  • 这次 回顾了 计算机存储单位的演变

    • 最小的读写单位 是 bit
  • 8-bit 固定下来 成为了字节(Byte)

位数容量
8-bit1Byte
1024Byte1 KB
1024 KB1 MB
1024 MB1 GB
1024 GB1 TB
  • 存储字符时

    • 第1位 是 标志位
    • 后7位 是 ascii具体的值
      • 可以用 1Byte 存储
  • 计算机之间 有了 更多的通信

    • 编码统一 为的是 更好地通信
  • 计算机之间

    • 怎么 开始通信的 呢??🤔
  • 我们下次再说!👋

  • 蓝桥->https://www.lanqiao.cn/courses/3584

  • github->https://github.com/overmind1980/oeasy-python-tutorial

  • gitee->https://gitee.com/overmind1980/oeasypython

  • 视频->https://www.bilibili.com/video/BV1CU4y1Z7gQ 作者:oeasy

相关文章:

[oeasy]python0088_字节_Byte_存储单位_KB_MB_GB_TB

编码进化 回忆上次内容 上次 回顾了 字符大战的结果 ibm 曾经的 EBCDIC 由于字符不连续的隐患 导致后续 出现 无数问题无法补救 7-bit 的 ASA X3.4-1963 字母序号连续 比较字符时 效率高判断字符 是否是字母 也很容易 获得了 IBM以外公司的 支持 为什么 ASA X3.4-1963 是 7…...

vue3.0 生命周期

目录前言:vue3.0生命周期图例1.beforeCreate2.created3.beforeMount/onBeforeMount4.mounted/onMounted5.beforeUpdate/onBeforeUpdate6.updated/onUpdated7.beforeUnmount/onBeforeUnmount8.unmounted/onUnmounted案例:总结前言: 每个Vue组…...

CGAL 数字类型

文章目录 一、简介二、内置数字类型三、CGAL中的数字类型参考资料一、简介 在CGAL汇总,数字类型必须满足特定的语法和语义要求,这样它们才能在CGAL代码中成功使用。一般来说,它们往往是代数结构概念的模型,如果它们对实数的子集模型,那么它们就也是RealEmbeddable模型。 二…...

如何将Python打包后的exe还原成.py?

将python打包好的exe解压为py文件,步骤如下:下载pyinstxtractor.py文件下载地址:https://nchc.dl.sourceforge.net/project/pyinstallerextractor/dist/pyinstxtractor.py并将pyinstxtractor.py放到和exe相同的目录文件下打开命令控制台cd 进…...

CJSON简单介绍

json简介 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成。 它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集,最新的定义可以参考ECMA-404_2nd_ed…...

算法训练营 day49 动态规划 爬楼梯 (进阶)零钱兑换 完全平方数

算法训练营 day49 动态规划 爬楼梯 (进阶)零钱兑换 完全平方数 爬楼梯 (进阶) 70. 爬楼梯 - 力扣(LeetCode) 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同…...

Vue:extends继承组件复用性

提到extends继承,最先想到的可能是ES6中的class、TS中的interface、面向对象编程语言中中的类和接口概念等等,但是我们今天的关注点在于:如何在Vue中使用extends继承特性。 目录 Vue:创建Vue实例的方式 构造函数方式&#xff1…...

ChatGPT 的一些思考

最近 ChatGPT3.5 在全世界范围内掀起了一次 AI 的潮流,ChatGPT1.0/ChatGPT2.0 当时也是比较火爆,但是那个当时感觉还是比较初级的应用,相当于是一个进阶版的微软小冰,给人的感觉是有一点智能,但不多。其实从早期版本开…...

GEE学习笔记 六十九:【GEE之Python版教程三】Python基础编程一

环境配置完成后,那么可以开始正式讲解编程知识。之前我在文章中也讲过,GEE的python版接口它是依赖python语言的。目前很多小伙伴是刚开始学习GEE编程,之前或者没有编程基础,或者是没有学习过python。为了照顾这批小伙伴&#xff0…...

大数据全系安装

内容版本号CentOS7.6.1810ZooKeeper3.4.6Hadoop2.9.1HBase1.2.0MySQL5.6.51HIVE2.3.7Sqoop1.4.6flume1.9.0kafka2.8.1scala2.12davinci3.0.1spark2.4.8flink1.13.5 1. 下载CentOS 7镜像 CentOS官网 2. 安装CentOS 7系统——采用虚拟机方式 2.1 新建虚拟机 2.2.1 [依次选择]-&…...

stable-diffusion-webui 安装使用

文章目录1.github 下载,按教程运行2.安装python 忘记勾选加入环境变量,自行加入(重启生效)3.环境变量添加后,清理tmp ,venv重新运行4.运行报错,无法升级pip,无法下载包,5…...

3D点云处理:点云聚类--FEC: Fast Euclidean Clustering for Point Cloud Segmentation

文章目录 聚类结果一、论文内容1.1 Ground Surface Removal1.2 Fast Euclidean Clustering题外:欧几里得聚类Fast Euclidean Clustering二、参考聚类结果 原始代码中采用的是pcl中的搜索方式,替换为另外第三方库,速度得到进一步提升。 一、论文内容 论文中给出的结论:该…...

华为OD机试题 - 射击比赛(JavaScript)| 代码+思路+重要知识点

最近更新的博客 华为OD机试题 - 括号检查(JavaScript) 华为OD机试题 - 最小施肥机能效(JavaScript) 华为OD机试题 - 子序列长度(JavaScript) 华为OD机试题 - 众数和中位数(JavaScript) 华为OD机试题 - 服务依赖(JavaScript) 华为OD机试题 - 字符串加密(JavaScript)…...

流程引擎之Flowable简介

背景Flowable 是一个流行的轻量级的采用 Java 开发的业务流程引擎,通过 Flowable 流程引擎,我们可以部署遵循 BPMN2.0 协议的流程定义(一般为XML文件)文件,并能创建流程实例,查询和访问流程相关的实例与数据…...

AcWing:4861. 构造数列、4862. 浇花(C++)

目录 4861. 构造数列 问题描述: 实现代码: 4862. 浇花 问题描述: 实现代码: 4861. 构造数列 问题描述: 我们规定如果一个正整数满足除最高位外其它所有数位均为 00,则称该正整数为圆数。 例如&…...

进程的概念

进程的概念 程序的概念 这里说的是一个可执行文件,passive的意思可以理解为我们这个执行文件需要我们进行双击才会被被执行。 双击后,程序入口地址读入寄存器,程序加载入主存,成为一个进程 进程是主动去获取想要的资源&#xff0…...

自动化测试5年经验,分享一些心得

自动化测试介绍 自动化测试(Automated Testing),是指把以人为驱动的测试行为转化为机器执行的过程。实际上自动化测试往往通过一些测试工具或框架,编写自动化测试用例,来模拟手工测试过程。比如说,在项目迭代过程中,持…...

independentsoft.de/MSG .NET Framework Crack

MSG .NET 是用于 .NET Framework / .NET Core 的 Microsoft Outlook .msg 文件 API。API 允许您轻松创建/读取/解析/转换 .msg 文件等。API 不需要在机器上安装 Microsoft Outlook 或任何其他第三方应用程序或库即可工作。 以下示例向您展示了如何打开现有文件并显示消息的某些…...

基于Transformer的NLP处理管线

HuggingFace transformers 是一个整合了跨语言、视觉、音频和多模式模态与最先进的预训练模型并且提供用户友好的 API 的AI开发库。 它由 170 多个预训练模型组成,支持 PyTorch、TensorFlow 和 JAX 等框架,能够在代码之间进行互操作。 这个库还易于部署&…...

二叉树OJ(一)二叉树的最大深度 二叉搜索树与双向链表 对称的二叉树

二叉树的最大深度 二叉树中和为某一值的路径(一) 二叉搜索树与双向链表 对称的二叉树 二叉树的最大深度 描述 求给定二叉树的最大深度, 深度是指树的根节点到任一叶子节点路径上节点的数量。 最大深度是所有叶子节点的深度的最大值。 (注:…...

linux之kylin系统nginx的安装

一、nginx的作用 1.可做高性能的web服务器 直接处理静态资源(HTML/CSS/图片等),响应速度远超传统服务器类似apache支持高并发连接 2.反向代理服务器 隐藏后端服务器IP地址,提高安全性 3.负载均衡服务器 支持多种策略分发流量…...

stm32G473的flash模式是单bank还是双bank?

今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...

css实现圆环展示百分比,根据值动态展示所占比例

代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...

C++:std::is_convertible

C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

Xshell远程连接Kali(默认 | 私钥)Note版

前言:xshell远程连接&#xff0c;私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...

visual studio 2022更改主题为深色

visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中&#xff0c;选择 环境 -> 常规 &#xff0c;将其中的颜色主题改成深色 点击确定&#xff0c;更改完成...

postgresql|数据库|只读用户的创建和删除(备忘)

CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...

python如何将word的doc另存为docx

将 DOCX 文件另存为 DOCX 格式&#xff08;Python 实现&#xff09; 在 Python 中&#xff0c;你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是&#xff0c;.doc 是旧的 Word 格式&#xff0c;而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...

Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!

一、引言 在数据驱动的背景下&#xff0c;知识图谱凭借其高效的信息组织能力&#xff0c;正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合&#xff0c;探讨知识图谱开发的实现细节&#xff0c;帮助读者掌握该技术栈在实际项目中的落地方法。 …...

Axios请求超时重发机制

Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式&#xff1a; 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...