为什么0A0B0C0D是32位字/数字?

时间:2015-10-10 02:46:47

标签: binary hex 32-bit number-systems

在讨论endian时,教师给我们一个十六进制的字0A0B0C0D,为什么它是一个32位的字?

感谢。

3 个答案:

答案 0 :(得分:2)

序言:

如果您的导师给出了000000000A0B0C0Dh,答案是什么? 好吧,@ ergonaut和@kdbanman提供的答案将产生64位。

你的问题:

  

为什么它是32位字?

教师给出的值不一定只需要32位。它可以很容易地考虑64位,128位或其他任何以28位开头的事情。

这里最重要的是最重要数字的位置 要找出将十六进制值0A0B0C0Dh转换为其二进制等效值0000' 1 010'0000'1011'0000'1100'0000'1101b并注意最强的 1 左边占据第28位。记住位编号从右边开始!
现在因为28位明显不适合16位字,我们选择下一个更高格式,即32位。

将此逻辑应用于我的前导码中的值也将导致32位数字,这是正确的答案。在对数字进行分类时,我们不会考虑任何前导零!

答案 1 :(得分:0)

0A0B0C0D是二进制的0000/1010/0000/1011/0000/1100/0000/1101,因为每个十六进制由4位表示。因此,如果你统计它们,你总共得到32位。

答案 2 :(得分:0)

有8个十六进制数字,每个十六进制数字是4位,8 * 4 = 32位。

你的特定词语如下:

0000 1010 0000 1011 0000 1100 0000 1101
 0    A    0    B    0    C    0    D