如何在32位操作系统中存储超过32位的数据类型

时间:2013-12-17 14:26:55

标签: operating-system size

如何在系统中存储超过32位的数据类型?

例如,考虑一个unsigned int或long,它的值大于2到32的幂,它是如何存储在内存中的?

2 个答案:

答案 0 :(得分:0)

任何操作系统或编译器都将使用它所需的位数。因此,如果操作系统或语言需要64位整数,它只会将这些整数存储为8字节的表示。

对于整数和浮点数,有一些标准。有关更多信息,请参阅维基百科上的这篇文章:http://en.wikipedia.org/wiki/Computer_numbering_formats

答案 1 :(得分:0)

32位架构中的32位与CPU寄存器的位数相比较宽(有一些例外,例如浮点寄存器)。这并不意味着系统无法处理大于此的数据类型,只是它必须一次处理这些数据类型为32位。

例如,机器有一个“Add With Carry”指令,允许机器将多个加法链接在一起,这样可以在16个步骤(512/32)中添加任意大小的数字,比如说两个512位数字