如何写整数值" 60" 16位二进制,32位二进制和二进制64位二进制

时间:2015-09-02 13:11:16

标签: vb.net visual-studio

如何以其他二进制格式写入整数值"60"

8bit二进制代码60 = 111100

16bit二进制代码60 =?

32bit二进制代码60 =?

64bit二进制代码60 =?

是16位二进制文​​件的111100000000吗?

为什么8位二进制代码包含6位而不是8位?

我用Google搜索答案,但我无法得到这些答案。请提供答案,因为我还是这个领域的初学者。

3 个答案:

答案 0 :(得分:6)

想象一下,你正在写小数值60。您可以使用2位数,4位数或8位数来编写它:

1. 60
2. 0060
3. 00000060

在我们的十进制表示法中,最重要的数字位于左侧,因此增加表示的位数而不更改值,意味着只需在左侧添加零。

现在,在大多数二进制表示中,这都是相同的。十进制60只需要6位来表示它,所以8位或16位表示将是相同的,除了左边填充零:

1. 00111100
2. 00000000 00111100

注意:某些操作系统,软件,硬件或存储设备可能有不同的Endianness - 这意味着它们可能存储16位值,其中最低有效字节优先,然后是最有意义的字节。如上所述,二进制表示法仍然是MSB-on-left,但是读取这些小端设备的内存将显示任何16位块将在内部反转:

1. 00111100 - 8bit - still the same.
2. 00111100 00000000 - 16bit, bytes are flipped.

答案 1 :(得分:3)

每个数字都有自己的二进制数,这意味着只有一个! 在16/32/64位系统上111100 - 60看起来一样,在数字前面添加了许多0(常规未显示) 所以16位就是0000000000111100 32位 - 0000000000000000000000000011110 等等

答案 2 :(得分:0)

对于存储Endian很重要...否则位宽零始终是前缀,因此60将是......

8bit:  00111100
16bit: 0000000000111100