使用基于堆栈的CPU组织的计算机基于一种称为 A. 堆栈 .堆栈是数据字的列表。它使用 后进先出(后进先出) 访问方法是大多数CPU中最流行的访问方法。寄存器用于存储堆栈最顶层元素的地址,称为 堆栈指针(SP) .在这个组织中,ALU操作是对堆栈数据执行的。这意味着堆栈上始终需要两个操作数。操作后,结果被放入堆栈中。
null
对堆栈的运算符执行的两个主要操作是 推 和 流行音乐 .这两个操作仅从一端执行。
1.推—— 此操作导致在堆栈顶部插入一个操作数,并减少堆栈指针寄存器。推送指令的格式为:
PUSH
它将指定地址处的数据字插入堆栈顶部。它可以实现为:
//decrement SP by 1SP <-- SP - 1 //store the content of specified memory address //into SP; i.e, at top of stackSP <-- (memory address)
2.流行音乐- 此操作导致从堆栈顶部删除一个操作数,并增加堆栈指针寄存器。POP指令的格式为:
POP
它将堆栈顶部的数据字删除到指定的地址。它可以实现为:
//transfer the content of SP (i.e, at top most data) //into specified memory location (memory address) <-- SP//increment SP by 1SP <-- SP + 1
操作类型指令在此CPU组织中不需要地址字段。这是因为该操作是在堆栈顶部的两个操作数上执行的。例如:
SUB
此指令只包含操作码,没有地址字段。它从堆栈中弹出两个顶部数据,减去数据,然后将结果推送到顶部的堆栈中。
PDP-11、英特尔8085和惠普3000 下面是堆栈式计算机的一些例子。
基于堆栈的CPU组织的优势——
- 复杂算术表达式的高效计算。
- 指令的执行速度很快,因为操作数数据存储在连续的内存位置。
- 指令的长度很短,因为它们没有地址字段。
基于堆栈的CPU组织的缺点——
- 程序的规模增加了。
注: 基于堆栈的 中央处理器 组织 使用零地址指令。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END