fpu以基于堆栈的方式实现寄存器的动机是什么?

Law*_*Kok 3 assembly stack fpu

fpu以基于堆栈的方式实现寄存器的动机是什么?据我所知,其他指令集如x86/sse使用命名寄存器.我可以想象基于堆栈的属性通常与我们的函数思想相对应,从而为汇编程序员提供了更直观的设计.

然而,我很好奇是否有一些更有形的动机,即技术优势.

jup*_*p0r 5

这些架构现在不再在现场看到.尽管如此,寄存器和程序代码空间的硅空间都是稀有资源(现在在嵌入式环境中仍然如此).这几乎总结了这种架构背后的两个动机:

  • ISA更加苗条
    • 需要更少的寄存器编码空间
    • 堆栈处理等事情的指示较少(显然)
  • 更简单的硬件设计
    • 寄存器解码逻辑少
    • 非常确定的和数学上易于理解的行为(像Java虚拟机这样的虚拟架构仍然使用它的原因)