【发布时间】:2013-11-22 05:22:03
【问题描述】:
我刚开始学习 MIPS 汇编器并意识到有 two registers 用于返回值。
首先我认为它被实现是因为有些语言可能返回一个以上的值(但是将寄存器的数量限制为 2 并没有多大意义)。正如this Q&A 所建议的那样,大多数现代编程语言只使用一个返回值,尽管强调“现代”这个词,这意味着过去有返回多个函数值的语言,这就是 MIPS 有 2 个返回寄存器的原因,如果是的,为什么只有 2 个?
【问题讨论】:
我刚开始学习 MIPS 汇编器并意识到有 two registers 用于返回值。
首先我认为它被实现是因为有些语言可能返回一个以上的值(但是将寄存器的数量限制为 2 并没有多大意义)。正如this Q&A 所建议的那样,大多数现代编程语言只使用一个返回值,尽管强调“现代”这个词,这意味着过去有返回多个函数值的语言,这就是 MIPS 有 2 个返回寄存器的原因,如果是的,为什么只有 2 个?
【问题讨论】:
为了能够在 32 位 CPU 上返回 64 位值 - e. G。双精度浮点数和 64 位整数。即使是具有单个返回值的主流语言,其数据类型也大于单个寄存器。
【讨论】: