0 jmp 0 8 1 jmp 0 2 2 int 0 3 在运行栈中申请3个栈空间 3 lod 1 3 取b入栈 4 lit 0 10 取10入栈 5 opr 0 2 次栈顶与栈顶相加 6 sto 1 4 存入c 7 opr 0 0 退出过程p 8 int 0 5 在运行栈中申请5个栈空间 9 opr 0 16 从命令行读入输入置于栈顶 10 sto 0 3 将栈顶值存入变量b 11 cal 0 2 调用过程p 12 lod 0 4 将变量c取至栈顶 13 opr 0 14 栈顶值输出至屏幕 14 opr 0 15 换行 15 opr 0 0 结束程序 SL 0 DL 0 RA 0 变量b 变量c RA p SL p DL p 运行栈 Const a=10;var b,c;procedure p; begin c:=b+a; end;begin read(b); call p; write(c);end. SL:静态链 DL:动态链 RA:返回地址 0 PL/0语言的代码生成是由过程GEN完成。 GEN有三个参数,分别代表目标代
原创力文档

文档评论(0)