[oeasy]python0084_扩展BCD_EBCDIC_ibm的发家史
编码进化
回忆上次内容
上次 回顾了
数字 进入二进制世界的 过程
采用的编码 是 BCD
也叫8421码
十进制数的 二进制形态
B
inaryC
odedD
ecimal数字的 输出形式
7-seg
辉光管
七段数码管

除了数字 之外
还有 字母
字母 是如何编码进入 计算机世界的 呢?🤔
BCDIC
在BCD的 基础上
ibm 继续着 人口统计的工作
除了数字之外
有了 字母编码的需求

ibm制作了一种 6-bit 的字符编码格式
Binary Coded Decimal Interchange Code
BCDIC
是一种 6-bit 的编码
是一种 以纸带为核心的 编码
在BCD的基础上 添加了字母
字母 按照十进数 编码
为什么 不按 二进制数 编码呢?🤔
输入
输入的设备 是 数字键盘
3个十进制数字输入1个字母

数字键盘 在固定电话中 依然存在

有点像 九键输入法
当时的 ibm
是 数字世界的 领航员
ibm
ibm从一开始
玩的 就是数字化
以人口统计 起家

到 称重计价

再到 上班打卡

数字化 根本离不开ibm
ibm开始逐渐盲目自大
酝酿了隐患
隐患
数字键盘
符号部分需要四次按键

BCDID
本来连续的 6-bit 当中
4
行12
列 本应连续

红色部分造成
字母序号 不连续
这 是个 小小的隐患
行列
BCD扩展后的 BCDIC

6 位 2进制数字
可以记录 1个字符

6-bit的编码
继续发展
ibm业务 越来越多
各国都要统计数据

业务 越来越多
编码方式 大同小异
但是 随着业务的不同
每次的编码 也有 调整
商业 公司
商业公司 也想要 统计数据
ibm也接下

业务多了
也在随着业务的增多不断发展变化
BCDIC 这个编码本身
问题
ibm 在数字化的过程中 机会很多
BCDIC编码 也跟着
变化
随着业务的
变化
造成了 编码本身的 不稳定

后面的代码
并不能 和前面兼容
那个时候 还没有向下兼容的 概念
后来
混乱之上的混乱就显得更加混乱🤪
总共有 6 个不兼容的编码🤪
每个编码都不同🤪
各个编码之间不能相互转化🤪
甲方不得不花钱来进行转化?🤫

话说编码不应该是最开始就想好么?
现实却是设计跟着思路
思路跟着需求走
ibm 终于意识到不同的格式之间应该编码统一了 😓
编码细节
由于 编码不兼容
导致 旧的数据不能用了
这个编码转化
没
人知道怎么弄成了 IBM 历史上 最大黑点和最高机密
IBM今天
历史上游的优势
真的很厉害
仍然是银行和金融系统
最
相信的系统集成商

后期编码中
比较稳定
基本数字和字符
IBM 也有了 专门 进行解码的打印机
但是 符号部分
没有 统一的规范
随着 业务变化
处于 一个混乱的状态 中
为了兼容而兼容
把隐患就给兼容进来了
为什么 要 这样编码 呢?
利于转化
ibm 终于开始注意 向后兼容的问题
这种新编码是要和原来的 6-bit 的编码兼容
可以快速的转化

按理说以 ibm 当时垄断的情况
RCA 和富士也开始以此标准制作兼容系统
兼容这种编码
已经把这个编码做成自己的标准
也就成了行业的标准
在隐患上建立起再高的大楼
也是要倒塌的
可是用什么编码来统一的呢?🤔
EBCDIC
ibm终于决心把字符编码定下来
配合最新发布的8-bit计算机
Extended Binary Coded Decimal Interchange Code
[eb'si:dik]
在BCDIC的基础之上
确立EBCDIC
用一个字节来编码
符号数量提升
前面是控制字符
NUL
DEL
CR(还记得什么意思么?)
NL(还记得什么意思么?)
黑暗森林 开始 慢慢成型😄

但是注意 这EBCDIC和ascii 还不一样
黑暗森林后面 是 字母和数字
字母排布 仍然 兼容BCDIC
字符编码 并不连续
i和j之间的序号 相差不止1
向后兼容
字母部分 确实是 向后兼容的

不过 这套排布方式
和ascii 并不一致
虽说 这种编码
有
缺陷但是
已经
形成了 行业标准ascii究竟是 如何 从
无
到有能否打败 强大的蓝色巨人IBM
在编码大战中 笑到最后 呢?
总结
这次 回顾了 字符编码的 进化过程
作用 非常大
IBM 的 BCDIC 有 黑历史 😄
IBM 在数字化过程中
6-bit的 BCDIC
直接进化成 8-bit的 EBCDIC
补全了 小写字母 和 控制字符
在ibm就是信息产业的年代
没有成为 行业的标准 呢?🤔
ibm的标准 怎么最终
我们下次再说!*
蓝桥->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