Skip to content

Latest commit

 

History

History
270 lines (206 loc) · 6.89 KB

384-596874-[趣味拓展]ASCII是怎么来的_ASCII之父_Bemer_COBOL_数据交换网络.sy.md

File metadata and controls

270 lines (206 loc) · 6.89 KB
show version enable_checker
step
1.0
true

编码进化

回忆上次内容

  • 上次 回顾了 字符编码的 进化过程
    • IBM 在数字化过程中
      • 作用 非常大
      • IBM 的 BCDIC 有 黑历史 😄
  • 6-bit的 BCDIC
    • 直接进化成 8-bit的 EBCDIC
    • 补全了 小写字母 和 控制字符
  • 在ibm就是信息产业的年代
    • ibm的标准 怎么最终
      • 没有成为 行业的标准 呢?🤔

ibm

  • ibm当时 确实 如日中天

图片描述

  • 主机、终端是 自己的
    • 软硬件一体
    • ibm就是 整个数字世界
  • EBCDIC编码 本身就是
    • ibm内部 编码
      • 内部 通信协议
  • 外面 根本不知道
    • 就算 知道了
    • 也只有去 被动兼容的份儿
  • 网络时代来了
    • 计算机通信 大发展
    • ibm也想让 更多主机 加入arpa网

通信

  • 通信 当中
    • 共识 非常重要
    • 如果 几台主机编码方式 彼此不通
    • 是 无法通信的

图片描述

  • 最先被搞疯的 是
    • ibm内部的人
      • Bemer
  • Bemer发现
    • 统一的 字符编码
      • 在组网时
        • 重要了!!!

无奈

  • 不同的编码 实在折磨他 够呛
    • 也没有 合适的 转码程序
    • 重要的是 没有编码的声明
      • 不知道对方 用的是什么编码
  • 就好像
    • 你能听到声音
    • 但不知道 去用哪国语言 来翻译😭

图片描述

  • 大型机市场 不止 IBM一家
    • Honeywell
    • univac
  • 事实上 9种编码方式
    • 构成了 计算机字符编码的巴别塔
    • 各个公司 各自为政
  • IBM高层 不懂技术
    • 他们 不知道EBCDIC的缺陷
    • 毕竟IBM公司 是由销售来驱动的

COBOL - 纸带

  • IBM 在统计业务的 基础上
    • 对大型的商业机构 提供 可执行程序
  • 1959年
    • IBM 定制了 编程语言COBOL
      • Common Business-Oriented Language
    • 面向商业的 通用语言
      • Bemer 参与了COBOL的制定

图片描述

  • 程序 被写在ibm的卡片上
    • 是 一种自记录式的 语言
  • COBOL 是谁发明的呢?
  • 还记得最早发现Bug的女士吗?

人类友好语言

  • Grace Hopper
    • 离开 MarkI 之后

图片描述

  • 1949年

    • 加盟了第一台电子计算机发明人莫契利和艾科特创办的公司
    • 为世界上第一台储存程序的商业电脑编写了许多软件
    • 她开始尝试着用简短的指令代码
  • 1952年

    • 赫柏终于率先研制出世界上第一个编译程序A—O
    • 能够将类似英语的符号代码转换成计算机能够识别的机器指令
    • 不要小看这个编译程序
    • 它有着电子词典的翻译功能
    • 能够将我们的语言翻译成cpu能执行的计算机字节

从翻译到编译

  • 翻译器有了
    • 但目前程序员敲打的符号代码只是类似英文
    • 赫柏觉得有必要设计一套更简单的机器语言
  • 在五角大楼的支持下
    • 赫柏领导着一个工作委员会
    • 开始研发Flow-matic

图片描述

  • 1957年
    • Flow—matic语言问世了
    • 这是第一个
      • 使用人类词语的计算机语言

人能读懂了

  • COBOL语言最重要的特征
    • 就是语法都和英文接近
    • 不懂电脑的人也能看程序
  • 编译器软件只做少许修改
    • 就能运行于任何类型的电脑

图片描述

  • 1959年
    • 基于Flow语言
    • 又成功研制出第一个商用编程语言COBOL

COBOL - 电传打字机

  • 输入输出设备
    • 从开关和指示灯
    • 变成了 电传打字机
  • 存储设备
    • 从 打孔纸带
    • 变成了 磁带

图片描述

  • 可COBOL语言
    • 到底 长什么样子 呢?

COBOL - 终端时代

  • 有了终端 作为 输入输出设备
    • 终于可以 不看打孔卡片
    • 直观地看到 COBOL语言的样子了

图片描述

  • 但是 任何语言
    • 篇章段句再复杂
  • 最终 还是要 落实到
    • 一个个字母上
  • 落实到字母
    • 就有 如何对字母编码的问题

EBCDIC的问题

  • 由于 EBCDIC 是 从BCDIC 过来的
  • 由于
    • 字母本身 并不连续

图片描述

  • 判断 一个字符 是不是 字母
    • 要判断6个区间
    • 总共12次判断
    • 非常麻烦!

图片描述

  • 增加了
    • 很多 没有必要的逻辑
  • 这些逻辑
    • 费时费力还费电

经理层

  • IBM经理层想的是
    • 更高业绩 和 更高提成
    • 铁了心想 要将EBCDIC进行到底
      • EBCDIC 从来都没有错
      • 错的是整个世界
      • IBM 是最稳妥的
        • 穿衣风格都统一到最保守的状态

图片描述

  • 自我欺骗到
    • 铤而走险了 属于
  • 有了隐患 不及时修复
    • 一错再错

Proposal

  • Bemer 在 IBM内部无法获得 经理层支持
    • 但是 又得干 很多具体的事务
  • 大型商业机构(特别是银行)
    • 不光 要记录自己的数据
    • 彼此的交易记录 也需要被记录
    • 商务过程 需要程序化
      • 无人化

图片描述

  • Bemer 开始在专业杂志上发请求
    • 寻求支持
      • 期待行业中 能有一个 更好的解决方法

组织 成立

  • ANSI(American National Standards Institute)的前身
    • American Standards Association's (ASA)
    • 成立了 X3.2 子委员会
  • 委员 来自 于
    • 各大商业巨头 一线工程师
    • 了解 技术
    • 代表 各方利益

图片描述

  • 在 X3.2第一次大会 期间
    • 成立了 X3.2.4 工作组
    • 专门想 怎么去解决 编码统一的问题
  • 这就不光是 IBM家的 事情 了
    • 综合协调 各巨头的利益

发布了标准

  • 1963年 X3.2.4 工作组
    • 发布了 ASA X3.4-1963 标准

图片描述

  • 这标准具体长什么样呢?🤔

总结

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