32 位 CPU 上的 Int64 实现
我有一个好奇的问题。
Int64
如何为 32 位处理器实现?我可以看到三个选项
- 32 位处理器有某种允许 64 位算术的扩展
Int64
是吗完全在 CLR 中实现,它通过使用 32 位操作来实现 64 位算术- 一些 32 位处理器可以执行 64 位算术,并且 CLR 使用此逻辑。在其他处理器上,CLR 会退回到它自己的 64 位逻辑实现。
第一种情况看起来不太合理,因为它意味着 64 位处理器现在应该能够执行 128 位算术。第二个问题提出了如何有效地完成这一任务的问题。第三种方法似乎结合了两种方法的最差特征。
I have a question of curiosity.
How is Int64
implemented for 32 bit processors? I can see three options
- 32 bit processors have some kind of extension allowing 64 bit arithmetic
Int64
is it implemented entirely in the CLR, which implements 64 bit arithmetics by using 32 bit operations- Some 32 bit processors can do 64 bit arithmetic and CLR use this logic. On other processors CLR falls back to it's own implementation of 64 bit logic.
First scenario doesn't look plausible, because it implies that 64 bit processors now should be capable of doing 128 bit arithmetic. The second raises a question on how it can be done efficiently. The third looks like to unite the worst features of both approaches.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)