美文网首页
为什么计算机的一个存储单元是八位? bit

为什么计算机的一个存储单元是八位? bit

作者: netppp | 来源:发表于2022-06-30 14:21 被阅读0次

https://www.zhihu.com/question/20870588

很简单,看看维基百科可以有个大概的粗浅认识。这里做一个简单概括和翻译。

Byte
in Wikipedia

再探究一下Byte的定义:能够编码一个字符的最小可寻址单元:

Historically, the byte was the number of bits used to encode a single character of text in a computer [1][2] and for this reason it is the smallest addressable unit of memory in any computer architectures.
其实以前也有过4位,6位或7位为一byte的标准,IBM 701(36位字长,18位byte)、IBM 702(7位字长,7位byte)、CDC 6600(60位字长,12位byte)等等。但是我觉得,考虑到包含的信息量不够大(所以4位被弃用了),还有不够整齐美观(即不方便扩展,不适合整齐划一进行工业生产;想象一下假如以7位为一byte,内存和硬盘的大小就不再是2^n bit大小了,而是2^(n-1)*7 bit大小了,有些别扭),所以只有8位作为最通行的标准流行开来。

8位一Byte,字长为2^n bits,这个标准来自于IBM system/360(1950年代到1960年代)。IBM也参与了ASCII码(7位128个字符)的制定(1963),但是同时开展了EBCDIC表(8位256个字符)的制定,作为自己公司的BCDIC标准的一个升级版本,其实就是想与ASCII竞争,但这个表的确很乱,而且版本也不统一,造成了很多吐槽(比如字母表居然不连续,加入了很多用不到的字符等等。)虽然这个标准非常坑爹,但是却推广了8 bit为一字节的概念通行开来。

接下来AT&T公司和8位处理器的兴起进一步推广了8位作为一个byte这一事实标准。由于ASCII码只有7位,出于表达英语字母及其他符号的必要,各个国家开始探索如何用多余的一位来表示其他的字符,这样就出现了很多“扩展ASCII字符集”,但是标准不一。IBM也推出了一个,叫做Code page 437。这个表也是MS-DOS所用的扩展ASCII码集,但是并不是最后的唯一标准。直到1985年,是

国际标准化组织
(ISO)及

国际电工委员会
(IEC)才联合制定的一系列8


字符集的标准,称为ISO 8859,全称ISO/IEC 8859,这才统一了混乱的标准。

说了这么多,只想表明一点:一个字节之所以有8个bit,是历史原因造成的(计算机前身是打印机),但是也是计算机原理,尤其是二进制特性的必然结果,是数据存储需要(必须要能在一个字节内表示超过100种状态,包括常用数字,大小写字母,和打印机上的其他控制符号)和早期计算机存储价格昂贵(所以没有用10个,16个或更多位),加上商业利益追求(IBM的推广)共同作用的结果。

相关文章

  • 为什么计算机的一个存储单元是八位? bit

    https://www.zhihu.com/question/20870588[https://www.zhihu...

  • 小结

    在计算机中最小的信息单位是bit,也就是一个二进制位,8个bit组成一个Byte,也就是字节。一个存储单元(一个地...

  • Java编码

    我们为什么要编码? 因为人类的语言太多,而计算机的存储单元——字节完全不能满足(1个字节是8个bit,所能表示的字...

  • 2.基本数据类型

    1.计算机存储单元 1.位位(bit) 可以存储0或1,是最小存储单位。 2.字节字节是计算机常用存储单位,一个字...

  • 数据类型

    bool类型 整型 在64位操作系统下定义整型变量 int64bit是计算机最小的存储单元,一个位有两个状态通电、...

  • 计算机中的大小端问题

    1、大小端问题的由来 在计算机内存中,通常是以字节(Byte),也就是 8 个位(Bit)为基本存储单元(也有以 ...

  • C语言关于指针的 a、*a、&a

    1.基本概念 1.1 存储单元 存储单元一般应具有存储数据和读写数据的功能,以8位(bit)二进制作为一个存储单元...

  • 计算机存储的大端法和小端法

    01引言 在计算机内存中,通常是以字节(Byte),也就是 8 个位(Bit)为基本存储单元(也有以 16 位为基...

  • 6502指令参考(07)-BIT指令

    BIT是字节测试指令(Bit Test)的缩写符。 A&M,N = M7,V = M6 该指令用于测试目标存储单元...

  • 汇编

    单位说明 在计算机中最小的信息单位,称之为位(bit,又称比特)。 存储器中所包含存储单元的数量称为存储容量,其计...

网友评论

      本文标题:为什么计算机的一个存储单元是八位? bit

      本文链接:https://www.haomeiwen.com/subject/wlvfbrtx.html