【问题标题】:Converting bits in hexadecimal to bytes将十六进制位转换为字节
【发布时间】:2018-05-04 20:38:27
【问题描述】:

我正在努力理解

256 位十六进制是 32 字节,或 0-9 或 A-F 范围内的 64 个字符

一个32字节的字符串怎么可能是0-9范围内的64个字符 A-F?

32 字节是什么意思?

我假设位表示数字 0 或 1,因此 256 位将是 0 或 1 的 256 位。

我知道 1 字节等于 8 位,那么 32 字节是 0、1、2、3、4、5、6 或 7 的 32 位(即 8 个不同的值)吗?

我确实知道一些不同的基数(例如二进制有 0 和 1,十进制有 0-9,十六进制有 0-9 和 AF 等),但我仍然不明白为什么 256 位的十六进制可以为 32 字节或 64 个字符。

我知道这是计算机科学的基础知识,所以我必须阅读一下,但你能简单解释一下吗?

【问题讨论】:

    标签: byte computer-science bit base bits


    【解决方案1】:

    一个十六进制字符代表 4 位。

    1 = 0001
    2 = 0010
    3 = 0011 
    4 = 0100
    5 = 0101
    6 = 0110
    7 = 0111
    8 = 1000
    9 = 1001
    A = 1010
    B = 1011
    C = 1100
    D = 1101
    E = 1110
    F = 1111
    

    两个十六进制字符可以代表一个字节(8位)。

    一个 32 字节的字符串怎么可能是 0-9 或 A-F 范围内的 64 个字符?

    请记住,十六进制表示是位设置的外部描述。如果字节包含 01001010,则可以说它是十六进制的 4A。字符 4A 不存储在字节中。就像在数学中我们使用“e”和“π”来表示数字一样。

    32 字节是什么意思?

    1 字节 = 8 位。 32 字节 = 256 位。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-12
      • 1970-01-01
      • 2014-12-18
      • 2014-03-11
      • 2017-08-23
      • 2014-05-09
      • 2019-09-07
      • 1970-01-01
      相关资源
      最近更新 更多