为什么1byte=8bit?

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fenger3790/article/details/82753691

下面内容多来自维基百科,少部分来自其他页面,汇总如下:
1.其实编码这个问题最早可以追溯到Baudotcode甚至Bacon’scipher,但时间有限我就没写(因为觉得语言、文字、图腾这些本质都是一种编码,再说就太多了)。


2.早期计算机使用四位二进制编码(BCD)或六位二进制编码(BCDIC)来用于美国陆军和海军的可打印图形模式运用。BCD只有四位,表示数字就从0000到1001的最多10个块,因此非数字字符几乎都在BCD范围之外;BCDIC虽然有6位字符,这仍然是相当不足的,如果你想要大写和小写(英文)字母和数字,那么标点符号只留下两个字符,所以大多数字符集中只有一种字母。


3.这个集合在1963年被扩充为7位二进制编码,也就是大名鼎鼎的美国信息交换标准码(AmericanStandardCodeforInformationInterchange,即ASCII),它被选用为联邦信息处理标准,以此取代了19世纪60年代美国政府和大学不同分支机构所使用的乱七八糟互不兼容的电传打字机代码。ASCII码包含了大小写字母以及一些控制字符,这样能够方便于书面语言传输以及打印设备功能使用,比如说下一页和换行,还方便了传输媒介中数据流的物理控制和逻辑控制。


4.1960年代初期,积极参与ASCII标准化的同时,IBM在其System/360产品线中引入了8位扩展二进制编码交换代码(EBCDIC),这是在他们之前在卡片穿孔机上使用的六位二进制编码(BCDIC)的扩展。System/360的重要性导致社会普遍采用8位存储大小,从这时开始1byte=8bit兴起。


5.当然注意EBCDIC和ASCII是不同的。EBCDIC代码页中有四个主要块:00000000到00111111保留用于控制字符;01000000至01111111用于标点符号;小写字符为10000000至10111111,大写字符和数字为11000000至11111111。EBCDIC如今还是更多用于IBM大型机系统(中型机用的都不一样,互不兼容),因为它设计的时候就是为了穿孔方便。而且因为EBCDIC比ASCII多一位,所以能表示的符号也更多,比如’¢’字符。ASCII码因为只有7位,而内存是8位,所以多出来的一位会被用于当做奇偶校验位。当然以ASCII为基础,现在已经形成了大多数新字符集(ISO646,ISO8859,Unicode和ISO10646等),这些字符集已经变为16位和32位。


6.顺便说一句,字节的单位符号是被国际电工委员会(IEC)、电气和电子工程师协会(IEEE)共同指定为大写字母B的。

猜你喜欢

转载自blog.csdn.net/fenger3790/article/details/82753691
今日推荐