如何用其他二进制格式编写整数值"60"?
8bit二进制代码60 = 111100
16bit二进制代码60 =?
32bit二进制代码60 =?
64bit二进制代码60 =?
它是16位二进制的111100000000吗?
为什么8位二进制代码包含6位而不是8位?
我在谷歌上搜索了答案,但我无法得到这些答案。请提供答案,因为我仍然是这个领域的初学者。
发布于 2015-09-02 13:21:27
假设您正在编写十进制值60。您可以使用2位数字、4位数字或8位数字编写它:
1. 60
2. 0060
3. 00000060在我们的十进制表示法中,最重要的数字在左边,所以增加表示的数字数,而不改变值,就意味着向左边添加零。
现在,在大多数二进制表示中,这将是相同的。小数点60只需要6位来表示它,所以8位或16位表示将是相同的,除了零的左填充:
1. 00111100
2. 00000000 00111100备注:某些操作系统、软件、硬件或存储设备可能有不同的Endianness --这意味着它们可能首先以最小的字节存储16位值,然后是最有意义的字节。像上面一样,二进制表示法仍然是左转的,但是读取这样小的终端设备的内存将显示任何16位块都会在内部反转:
1. 00111100 - 8bit - still the same.
2. 00111100 00000000 - 16bit, bytes are flipped.发布于 2015-09-02 13:15:59
每个数字都有自己的二进制数,这意味着只有一个!在一个16/ 32 /64位系统中,111100 - 60只会看起来一样,许多0在数字前面加上(没有显示规则),所以在16位上是0000000000111100 32位-000000000000000000000011110等等。
发布于 2015-09-02 13:22:28
对于存储来说恩甸很重要..。否则,位宽零总是前缀,所以60应该是.
8bit: 00111100
16bit: 0000000000111100https://stackoverflow.com/questions/32354153
复制相似问题