我的导师说“一个八进制字节由 6 位组成”。我很难理解为什么会这样,因为八进制数字由 3 个二进制位组成。我也不理解将八进制字节定义为“6 位”而不是其他数字的重要性。
任何人都可以解释为什么会这样,如果它实际上是真的,或者给我一个有用的解释吗?
这都是猜测和猜测,因为这些都不是标准术语。
一个 8 位字节可以写成两位十六进制数,因为每个位表示 4 位。最大的字节值是0xFF
。
以此类推,两位八进制数可以表示 2 × 3 = 6 位。其最大值为077
。因此,如果您愿意,可以将一对两个八进制数称为“八进制字节”,但前提是您还将一个 8 位字节称为“十六进制字节”。
在我个人看来,这两个概念都没有帮助或有用,你最好只是说出你的字节有多少位。
就像@Kerrek SB 我不得不猜测一样。
告诉他一个八进制字节是两个八进制半字节,那应该把他整理出来。
两个十六进制数字是一个 8 位字节,因此每四位称为一个半字节。
至于 wiki :字节是数字信息的单位,通常由 8 位组成。位是二进制数字的缩写。该位表示具有两个可能值之一的逻辑状态。这些值通常表示为“1”或“0”。
所以字节是一组比特。具体到8位。
我们看到该定义没有说明 dec oct hex 和其他整数表示法。
确实字节数和整数数是不一样的。那么它从哪里开始呢?
如果我们像 01001010 这样键入字节位,我们会发现我们可以将此对象一对一映射为整数 01001010 的二进制表示法。
(字节)01001010 --> (二进制整数) 01001010
这两个对象看起来一样,但实际上只是映射。
现在我们使用整数而不是抽象对象“字节”。整数可以通过不同的符号来指定,例如:dec、binary、hex、oct 等。
像八进制(十六进制,十进制等)这样的符号只是一种指定整数的方法。它不影响初始字节对象的性质。
无论使用何种符号,字节都有 8 位。
ISO/IEC 2382-1:1993 说: 1. 一个字节的位数通常是 8。 2.Octet 是由 8 个位组成的字节