为什么 1B = 8b?

2018-11-08 10:14:32 +08:00
 mortonnex
为什么 byte 和 bit 对倍数关系是 8?
3242 次点击
所在节点    问与答
15 条回复
alect
2018-11-08 10:18:49 +08:00
mm163
2018-11-08 10:19:12 +08:00
为什么 9999 是四位数?
013231
2018-11-08 10:26:28 +08:00
lululau
2018-11-08 10:28:25 +08:00
3L 正解
szq8014
2018-11-08 10:38:33 +08:00
就像英文有 26 个字母一样吧…………哎?
你去看看 ASCII 表,8 位是能满足表示 26 个字母的前提下最 2^n 最小的了,还多出来一些可以设定成其他符号。
还可能跟早期电脑 CPU 就是 8 位 16 位的有关。
// 嗯。。我不对自己说的话负责。。
mortonnex
2018-11-08 10:52:32 +08:00
@013231
@lululau
@szq8014

" Many types of applications use information representable in eight or fewer bits and processor designers optimize for this common usage. The popularity of major commercial computing architectures has aided in the ubiquitous acceptance of the eight-bit size.[8] Modern architectures typically use 32- or 64-bit words, built of four or eight bytes."

学习了!
imn1
2018-11-08 11:16:32 +08:00
其实没搞清 LZ 想问什么
liuxey
2018-11-08 11:58:15 +08:00
说到底还是历史原因,1B=8b 是最好的选择,既够用又不浪费。
GeruzoniAnsasu
2018-11-08 12:19:08 +08:00
https://blog.trailofbits.com/2017/07/30/an-extra-bit-of-analysis-for-clemency/

不仅 8bit 只是约定俗成,大小端对齐也是约定俗称,你看 defcon2017 不就出了个 9bit 字节,3byte 中端对齐的题,说明这样的架构也是完全可行的,只是历史没有这样发展而已
Akiyu
2018-11-08 12:34:25 +08:00
楼上已经总结的很清楚了, 可以不是 8bit
现在是 8bit 是因为大家已经约定成俗了, 还有一部分历史原因

比如最开始的键盘, 包括现在的键盘, 是不适合人体的
当意识到人体工学键盘更适合人体时, 推广人体工学键盘已经来不及了
因为大多数人已经习惯了普通的键盘
feather12315
2018-11-08 12:38:52 +08:00
字拓展和位拓展了解一下。
af463419014
2018-11-08 13:34:11 +08:00
可能因为 8 是整数吧
yksoft1
2018-11-08 13:53:52 +08:00
MIME、Base64、EUC-JP 之类编码为何会存在,就是因为电子邮件标准里面一个字节就是 7 位。
yksoft1
2018-11-08 13:55:43 +08:00
是 ISO-2022-JP..
liwufan
2018-11-08 14:00:12 +08:00
因为 IBM
<amp-youtube data-videoid="ixJCo0cyAuA" layout="responsive" width="480" height="270"></amp-youtube>

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/505641

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX