P55Day5:堆栈相关指令的设计与调试1.设计目标为CPU扩充PUSH、POP、CALL、RET指令,完成微程序设计2.设计任务(1)编写PUSH和POP指令的微程序,并用下面的调机程序验证。ORG0030HMOV#0041H,R0ROPUSH0040HPUSHPOP(RO)R1POP
Day5: 堆栈相关指令的设计与调试 1. 设计目标 为CPU扩充PUSH、POP、CALL、RET指令,完成微程序设计。 2. 设计任务 (1)编写PUSH和POP指令的微程序,并用下面的调机程序验 证。 ORG 0030H MOV #0041H,R0 PUSH R0 PUSH 0040H POP (R0) POP R1 P55
PUSH指令的EXECPUSHOPR·(SP)-1SP, OPR-(SP)例:PUSH#1234H; #1234 →(SP)PUSH0040H; (0040H)→(SPPUSH R3; (R3) 一→(SP)实际上是双操作数的传送X相当于MOVOPR,(SP)·OPR的本质是源,但是作为单操作数指令,只有取目的操作数阶段
PUSH指令的EXEC ❖PUSH OPR •(SP)-1→SP, OPR→(SP) •例: PUSH #1234H ; #1234 →(SP) PUSH 0040H ; (0040H) →(SP) PUSH R3 ; (R3) →(SP) ❖实际上是双操作数的传送 •相当于 MOV OPR, (SP) ▪OPR的本质是源,但是作为单操作数指令,只有取目的操作数阶段
PUSH指令的执行阶段DRSHIFTALU目的操作数(A)一DR
PUSH 指令的执行阶段 目的操作数 (A)→DR A ALU SHIFT DR
PUSH指令的执行阶段SPSHIFTALU(SP)-1-SP;OPR-(SP)
PUSH 指令的执行阶段 (SP) -1→SP ;OPR→(SP) SP A ALU SHIFT
PUSH指令的执行阶段ARSPSHIFTALU(SP)-1SP;OPR(SP)
A ALU SHIFT SP AR (SP) -1→SP ;OPR→(SP) PUSH 指令的执行阶段