gpt4 book ai didi

.net - 在 64 位系统中,32 位变量比 64 位对象占用更少的空间?

转载 作者:行者123 更新时间:2023-12-04 06:57:08 25 4
gpt4 key购买 nike

.NET Framework 为 Int32 分配的内存较少比 Int64在 64 位系统中?

最佳答案

Int32 和 Int64 应该在所有平台上消耗相同的空间(意味着一个 Int32 和另一个 Int32 在 x86 和 x64 上消耗的空间相同)。在所有平台上,Int32 的消耗量应与 Int64 不同。

然而,Int32 和 Int64 都是不好的例子,因为它们是结构体。对象在 x64 和 x86 上消耗的空间明显不同,因为它们基本上是指针,并且 x64 上的指针是 x86 上的两倍宽。这适用于函数地址、跳转地址、虚表、调用指令等等。 x64 编译的应用程序和 x64 的 IL 应用程序 JIT 代码将明显大于 x86 对应的应用程序。过去 x86 代码生成更成熟,优化也更积极,这仅仅是因为编译器更成熟(这也适用于 JIT 代码生成),但编译器 catch 了,现在 x64 优化是相当的,如果不比 x86 更好。

关于.net - 在 64 位系统中,32 位变量比 64 位对象占用更少的空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2435160/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com