《编译原理》课程简介 (3).pdf

上传人:奉*** 文档编号:67733144 上传时间:2022-12-26 格式:PDF 页数:10 大小:1.80MB
返回 下载 相关 举报
《编译原理》课程简介 (3).pdf_第1页
第1页 / 共10页
《编译原理》课程简介 (3).pdf_第2页
第2页 / 共10页
点击查看更多>>
资源描述

《《编译原理》课程简介 (3).pdf》由会员分享,可在线阅读,更多相关《《编译原理》课程简介 (3).pdf(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、编译原理COMPILATION PRINCIPLE 第一章 引 论1.3 高级语言程序简介p模块之间进行参数传递有三种形式:一、参数传递v1、传地址(call by reference):把实在参数的地址传递给相应的形式参数v2、传值(call by value):调用段把实在参数的值计算出来并放在被调用段可以拿 到的地方,把值带入。p模块之间进行参数传递有三种形式:一、参数传递v3、传名(call by name):过程调用的作用相当于把被调用的过程体抄到调用出现 的地方,但把其中任一出现的形式参数都替换成相应的实在 参数(文字替换)。二、存贮管理v 1、静态存贮分配 编译时就安排好目标程序

2、运行时的全部数据空间,并能确定每个数据项目的单元地址。v 2、动态存贮分配 如果允许递归、可变数据结构,则必须动态分配。栈式:整个程序数据空间安排在一个栈中 堆式:允许自由地申请和退还空间 对于下述程序,试分析用传名、传值、传地址方法传递参数时所得对于下述程序,试分析用传名、传值、传地址方法传递参数时所得的打印结果。的打印结果。PROGRAM SS(input,output);VAR A,B:integer;PROCEDURE P(x,y,z:integer);begin y:=y+1;z:=z+x;end;BEGIN A:=2;b:=3;P(A+B,A,A);writeln(A=,A);EN

3、D(1)传名:相当于执行 A:=2;B:=3;A:=A+1;A:=A+(A+B)writeln(A=,A);所以,结果为A=9(2)传值:把实参的值计算出来传给形参。在调用过程P时,形参 x=5;y=2;z=2 出过程P时,形参 x=5;y=3;z=7 这并不把结果回送到主程序,所以结果为A=2(3)传地址:实参计算出结果,把地址送形参。设变量 T=A+B(结果为5)。执行时把T、A、A的 地址(设为addr1,addr2,addr2)送给形参:x=addr1,y=addr2,z=addr3。T的地址addr1即 x A的地址addr2即 y A的地址addr2即 z 执行过程P即为:y:=y+1;z:=z+x 所以,为 A:=A+1=3 为 A:=A+T=8。因此,最后 A=8。523TABProcedure P(x,y,z);begin y:=x+y;z:=z*z;end begin A:=2;B:=A*2;P(B-A,A,B);print A,B end传地址、传值和传名,结果如何|编译原理

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁