[oeasy]python0086_ASCII_出现背景_1963年_DEC_PDP系列主机_VT系列终端

简介: [oeasy]python0086_ASCII_出现背景_1963年_DEC_PDP系列主机_VT系列终端

编码进化

回忆上次内容

  • 上次 回顾了
  • 字符编码的新陈代谢
  • ibm 曾经的EBCDIC
  • 由于 字符不连续
  • 导致 后续 出现无数问题
  • 随着 网络的发展
  • 数据交换的 需要
  • 原来的小隐患
  • 现在 产生了 巨大问题
  • Bemer 联合各方巨头
  • 想要推出
  • 字符连续的编码集
  • 这新编码集 具体长什么样 呢?🤔

新编码集

  • 7-bit的编码长度
  • 结构和 今天的ascii 基本一样

  • 空了 28个字符
  • 今天小写字母的位置
  • 当时 还不敢放小写字母
  • 为什么呢?

各语言

  • 各语言 都想进入 7-bit
  • 日文假名
  • 拉丁字符
  • 西里尔字符
  • 眼巴巴地等着地儿放

  • 新编码 比EBCDIC 好了很多
  • 具体 好在里呢?

ASCII字母 连续性

  • 轻松判断字符 是否为 字母

  • 连续性
  • ascii的 大写字母 是连续的
  • ascii的 小写字母 也是连续的

  • 还加了一些字符进去

反斜杠

  • 反斜杠
  • 就是Bemer加到 ASCII当中的

  • 反斜杠
  • 后来 成了转义字符
  • 1963年的版本
  • 黑暗森林 已经 初具规模
  • 不过 好像找不到 Esc

Esc

  • Esc 还不在 当时的黑暗森林 中
  • 而是 位于倒数第二

  • 1963年
  • Bemer将Esc 引入到ASCII中
  • 几年后
  • 小型机开拓者DEC
  • 通过 PDP系列小型机 开拓市场
  • 将Esc 玩成了
  • 终端控制序列
  • 从 VT05 到 VT100 再到 VT220
  • 最终 把控制序列 玩成了ANSI标准
  • \33[38;5;196❤\33[0m
  • 爱了

最初版的 黑暗森林

  • 很多编码 已经消失了

  • 有些永远留在了ASCII里
  • LF
  • HT 其实就是 TAB
  • ESC
  • DEL

  • 就像 一场青春期的梦

组织

  • 标准 一经推出
  • 被 Bell贝尔公司 响应
  • 贝尔公司 是 电报电话巨头
  • 在 计算机领域 没有历史包袱

  • 贝尔、麻省理工及美国通用电气
  • 想要在 计算机操作系统 有所收获
  • 成立了 multics项目组
  • 后来 项目组解散
  • 无所事事的Thompson和Ritchie
  • 开始琢磨怎么 在PDP-7 继续 玩《space travel》
  • 最终 unix 和 c 诞生
  • 这IBM统治之下
  • PDP 小型机 是如何崛起的呢?

输出设备

  • 早期计算机输入设备
  • 是开关

  • 早期计算机输出设备
  • 是指示灯

PDP的崛起

  • 1962年
  • 美国麻省理工学院里
  • 第一台 拥有可视化显示器的小型机PDP-1出现
  • 拥有10英寸光栅显示器

  • 斯蒂芬·罗素 带着学生开发出了
  • 具有历史意义的电子游戏
  • 太空大战
  • 比雅达利的pong要早得多
  • 基于PDP系列小型机

电子竞技

  • 利用 最原始的图形技术
  • 表现出 茫茫深空下的神秘

  • 1972年
  • 召开 史上第次电子竞技大会
  • 泛银河系太空大战奥运会

新的生态

  • unix 和 c 诞生之后
  • IBM那套自上而下、以销售为核心的体系
  • 不理解 软件特性

  • unix 和 c 迅速占领市场
  • 硬件 靠的就是 PDP系列小型机
  • 这也 推动了 Dec的发展

ASA X3.4-1963

  • Dec 没有IBM的历史包袱
  • 期待 改变
  • 采取了 ASA X3.4-1963 这个编码集

  • DEC公司
  • 确实崛起了
  • 除了 作为主机的小型机
  • DEC 也做 终端

VT-100

  • VT-100 系列终端
  • 真的很潮

  • PDP小型机
  • 开始用 小型机网络
  • 蚕食 IBM大型机的份额
  • ASCII在网络中
  • ASA X3.4-1963 成为 事实上的标准

总结

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

  • 为什么 ASA X3.4-1963 是 7-bit 编码?
  • 8-bit 不是才 正好一个字节 吗?🤔
  • 我们下次再说!👋
  • 蓝桥->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
目录
相关文章
|
19天前
|
人工智能 Shell 开发工具
[oeasy]python0041_输出ASCII码表_英文字符编码_键盘字符_ISO_646
本文介绍了ASCII码表的生成与使用,包括英文字符、数字和符号的编码。通过Python代码遍历0到127的ASCII值,解决了找不到竖线符号的问题,并解释了ASCII码的固定映射关系及其重要性。文章还介绍了ASCII码的历史背景,以及它如何成为国际标准ISO 646。最后,通过安装`ascii`程序展示了完整的ASCII码表。
14 1
|
1月前
|
人工智能 Python
[oeasy]python039_for循环_循环遍历_循环变量
本文回顾了上一次的内容,介绍了小写和大写字母的序号范围,并通过 `range` 函数生成了 `for` 循环。重点讲解了 `range(start, stop)` 的使用方法,解释了为什么不会输出 `stop` 值,并通过示例展示了如何遍历小写和大写字母的序号。最后总结了 `range` 函数的结构和 `for` 循环的使用技巧。
31 4
|
2月前
|
存储 Python
[oeasy]python038_ range函数_大小写字母的起止范围_start_stop
本文介绍了Python中`range`函数的使用方法及其在生成大小写字母序号范围时的应用。通过示例展示了如何利用`range`和`for`循环输出指定范围内的数字,重点讲解了小写和大写字母对应的ASCII码值范围,并解释了`range`函数的参数(start, stop)以及为何不包括stop值的原因。最后,文章留下了关于为何`range`不包含stop值的问题,留待下一次讨论。
25 1
|
23天前
|
人工智能 开发工具 Python
[oeasy]python040_缩进几个字符好_输出所有键盘字符_循环遍历_indent
本文探讨了Python代码中的缩进问题。通过研究`range`函数和`for`循环,发现缩进对于代码块的执行至关重要。如果缩进不正确,程序会抛出`IndentationError`。文章还介绍了Python的PEP8规范,推荐使用4个空格进行缩进,并通过示例展示了如何使用Tab键实现标准缩进。最后,通过修改代码,输出了从0到122的字符及其对应的ASCII码值,但未能找到竖线符号(`|`)。文章在总结中提到,下次将继续探讨竖线符号的位置。
12 0
|
2月前
|
数据可视化 测试技术 Linux
基于Python后端构建多种不同的系统终端界面研究
【10月更文挑战第10天】本研究探讨了利用 Python 后端技术构建多样化系统终端界面的方法,涵盖命令行界面(CLI)、图形用户界面(GUI)及 Web 界面。通过分析各种界面的特点、适用场景及关键技术,展示了如何使用 Python 标准库和第三方库(如 `argparse`、`click`、`Tkinter` 和 `PyQt`)实现高效、灵活的界面设计。旨在提升用户体验并满足不同应用场景的需求。
|
2月前
|
Python
[oeasy]python036_数据类型有什么用_type_类型_int_str_查看帮助
本文回顾了Python中`ord()`和`chr()`函数的使用方法,强调了这两个函数互为逆运算:`ord()`通过字符找到对应的序号,`chr()`则通过序号找到对应的字符。文章详细解释了函数参数类型的重要性,即`ord()`需要字符串类型参数,而`chr()`需要整数类型参数。若参数类型错误,则会引发`TypeError`。此外,还介绍了如何使用`type()`函数查询参数类型,并通过示例展示了如何正确使用`ord()`和`chr()`进行转换。最后,强调了在函数调用时正确传递参数类型的重要性。
23 3
|
2月前
|
网络安全 Python
Python编程--目标IP地址段主机指定端口状态扫描
Python编程--目标IP地址段主机指定端口状态扫描
56 1
|
3月前
|
Python
在python终端中打印颜色的3中方式(python3经典编程案例)
这篇文章介绍了在Python终端中打印彩色文本的三种方式:使用`colorama`模块、`termcolor`模块和ANSI转义码。
45 8
|
2月前
|
存储 C++ Python
[oeasy]python037_ print函数参数_sep分隔符_separator
本文介绍了Python中`print`函数的`sep`参数,即分隔符。通过回顾上文内容,解释了类型与`type`的概念,并强调了参数类型的重要性。文章详细探讨了`print`函数如何使用`sep`参数来分隔输出值,默认分隔符为空格(序号32)。还讨论了如何修改分隔符为其他字符,如冒号,并解释了为何反斜杠需要使用双反斜杠表示。最后,文章追溯了`sep`名称的由来,以及相关词汇的历史背景,如盎格鲁-萨克逊人的武器和语言。
45 0
|
3月前
|
Python
[oeasy]python035_根据序号得到字符_chr函数_字符_character_
本文介绍了Python中的`ord()`和`chr()`函数。`ord()`函数通过字符找到对应的序号,而`chr()`函数则根据序号找到对应的字符。两者互为逆运算,可以相互转换。文章还探讨了单双引号在字符串中的作用,并解释了中文字符和emoji也有对应的序号。最后总结了`ord()`和`chr()`函数的特点,并提供了学习资源链接。
31 4