[oeasy]python0088_字节_Byte_存储单位_KB_MB_GB_TB
编码进化
回忆上次内容
- 上次 回顾了 字符大战的结果
- ibm 曾经的 EBCDIC 由于字符不连续的隐患
- 导致后续 出现 无数问题
- 无法补救
- ibm 曾经的 EBCDIC 由于字符不连续的隐患
- 7-bit 的 ASA X3.4-1963
- 字母序号连续
- 比较字符时 效率高
- 判断字符 是否是字母 也很容易
- 获得了 IBM以外公司的 支持
- 字母序号连续
- 为什么 ASA X3.4-1963 是 7-bit 编码?
- 8-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
- 演化成
- bite 的拼写
ASA X3.4-1963 发布
-
IBM 编码演化
- BCD码 4-bit
- 发展到BCDIC 6-bit
- 包含了字符
- 发展到BCDIC 6-bit
- BCD码 4-bit
-
网络通信 让 计算机 不再是 孤岛
- IBM之外的其他公司 想要统一通信标准
- 到 7-bit的 ASA X3.4-1963
- IBM之外的其他公司 想要统一通信标准
- IBM 之外的公司 从产品层面跟进
- IBM
仍
想要 主导标准
- IBM
词汇出现
- 1964年
- ibm 发布 System/360
- 存储容量单位 为 Byte (8-bit)
- 首款机型 4096 Byte
- Byte 这个单词
- 作为 营销话语中的 概念
- 开始传播
孤注一掷
- 为了配合 8-bit 的 System/360
- 编码规则 从6-bit的 BCDIC
- 直接跳到 8-bit的 EBCDIC
- 编码规则 从6-bit的 BCDIC
- 这是 IBM
最后的
倔强
终局
- 两年之后 1965年
- ibm最新机器
- 也开始 使用 ASA X3.4-1963
- 编码统一到了 7-bit的 ASA X3.4-1963
- 也就是 后来的ASCII
- 字符编码大战尘埃落定
- ibm最新机器
- 可是为什么 ASCII编码
只
用 7-bit- 1个字节 却要 8-bit 呢?
- 7-bit 不是 刚好放下 吗?
- 1个字节 却要 8-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种状态
- 可以 代表(100)2进制种状态
- 2根手指
- 这就是 2-4
译码器(decoder)
- 如果 有更多手指 呢?
3-8 译码器
- (11)2进制根手指
- 3根手指
- 可以代表 (1000)2进制种状态
- 8种状态
- 可以代表 (1000)2进制种状态
- 3根手指
- 这就是
3-8译码器
(decoder)- 或者说是
3-8解码器
- 或者说是
- 再往后呢?
4-bit 寻址空间
- (100)2进制根手指
- 4根手指
- 可以代表(10000)2进制种状态
- 16种状态
- 可以代表(10000)2进制种状态
- 4根手指
- 再往上呢?😁
8-bit 寻址空间
- 从4-bit 直接跳到 8-bit
- (1000)2进制根手指
- 8根手指
- 可以代表(100000000)2进制种状态
- 256种状态
- 可以代表(100000000)2进制种状态
- 8根手指
- 8-bit的cpu
- 直接寻址空间 可达256个Byte
- 16-bit的寄存器
- 直接寻址空间 64 x 1024 Byte
- 相当于 64KByte
- 直接寻址空间 64 x 1024 Byte
- 随着 计算机字长的增加
- 存储单位 在
指数级
增长
- 存储单位 在
更多存储单位
- 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-bit | 1Byte |
1024Byte | 1 KB |
1024 KB | 1 MB |
1024 MB | 1 GB |
1024 GB | 1 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实例的方式 构造函数方式࿱…...
ChatGPT 的一些思考
最近 ChatGPT3.5 在全世界范围内掀起了一次 AI 的潮流,ChatGPT1.0/ChatGPT2.0 当时也是比较火爆,但是那个当时感觉还是比较初级的应用,相当于是一个进阶版的微软小冰,给人的感觉是有一点智能,但不多。其实从早期版本开…...

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

大数据全系安装
内容版本号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的意思可以理解为我们这个执行文件需要我们进行双击才会被被执行。 双击后,程序入口地址读入寄存器,程序加载入主存,成为一个进程 进程是主动去获取想要的资源࿰…...

自动化测试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(一)二叉树的最大深度 二叉搜索树与双向链表 对称的二叉树
二叉树的最大深度 二叉树中和为某一值的路径(一) 二叉搜索树与双向链表 对称的二叉树 二叉树的最大深度 描述 求给定二叉树的最大深度, 深度是指树的根节点到任一叶子节点路径上节点的数量。 最大深度是所有叶子节点的深度的最大值。 (注:…...
云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?
大家好,欢迎来到《云原生核心技术》系列的第七篇! 在上一篇,我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在,我们就像一个拥有了一块崭新数字土地的农场主,是时…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...

如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...
基于服务器使用 apt 安装、配置 Nginx
🧾 一、查看可安装的 Nginx 版本 首先,你可以运行以下命令查看可用版本: apt-cache madison nginx-core输出示例: nginx-core | 1.18.0-6ubuntu14.6 | http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages ng…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...

【机器视觉】单目测距——运动结构恢复
ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛…...
在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module
1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...

Ascend NPU上适配Step-Audio模型
1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统,支持多语言对话(如 中文,英文,日语),语音情感(如 开心,悲伤)&#x…...

dify打造数据可视化图表
一、概述 在日常工作和学习中,我们经常需要和数据打交道。无论是分析报告、项目展示,还是简单的数据洞察,一个清晰直观的图表,往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server,由蚂蚁集团 AntV 团队…...

springboot整合VUE之在线教育管理系统简介
可以学习到的技能 学会常用技术栈的使用 独立开发项目 学会前端的开发流程 学会后端的开发流程 学会数据库的设计 学会前后端接口调用方式 学会多模块之间的关联 学会数据的处理 适用人群 在校学生,小白用户,想学习知识的 有点基础,想要通过项…...