- 1、本文档共33页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * * * * * 基本概念—作用域与生存期 生存期是时间属性 作用域是空间属性 程序中变量的作用域是变量为可见的一个语句的范围; 如果一条语句中的一个变量可以被引用,这个变量即在这条语句中为可见的。 作用域规则 决定如何将一个名字的出现与一个变量相关联。 ① 静态作用域 基于程序单元的嵌套结构(作用域规则在编译时决定) ② 动态作用域 基于调用序列(作用域必须在运行时决定) 子程序及其实现 第四章 - * 基本概念—作用域与生存期 program MAIN; var a : integer; procedure P1; begin print a; end; {of P1} procedure P2; var a : integer; begin a := 0; P1; end; {of P2} begin a := 7; P2; end. {of MAIN} 名字、绑定、类型检测和作用域 第三章 - * 如果是静态作用域: 根据程序单元的结构将名字绑定于非局部变量 输出结果:7 如果是动态作用域: 根据子程的调用序列将名字绑定于非局部变量 输出结果:0 子程序及其实现 第四章 - * 3.子程序作为参数传递 【例】当调用sub4时,sub2的引用环境是什么? 浅绑定: 深绑定: = sub2, sub4, sub3, sub1 = sub2, sub1 子程序及其实现 第四章 - * 3.子程序作为参数传递 结论: 对于静态作用域语言:一般使用深绑定 对于动态作用域语言:一般使用浅绑定 习题 考虑下面用C语言编写的程序, 对于下面每一种参数传递方法分别写出程序的输出值。 (a) 按值传递 (b) 按引用传递 (c) 按值结果传递 (d) 按名传递 Program Main; var A, B : integer; procedure P(x, y, z); begin y : =y+1; z : =z+x; end; begin A : = 2; B : = 3; P(A+B, A, A); write(A); end * * * * * * * * * * * * * * * * * * * * * * * * * * * * 程序设计语言范型Programming Languages Paradigms 教师: 张荣华 华北电力大学计算机系软件教研室(保定) 子程序 引言 抽象(程序设计语言)= 数据抽象 + 控制抽象 子程序及其实现 第二章 - * 抽象(程序设计语言)= 数据抽象 + 控制抽象 数据抽象 控制抽象 基本数据类型 字符串类型 用户定义的序数类型 数组类型 记录类型 表达式层次 语句层次 程序单元层次 抽象数据类型 引言 子程序及其实现 第二章 - * 数据抽象 + 控制抽象 不同的程序设计语言范型语义 程序设计语言范型纵向教学模式 引言 子程序及其实现 第二章 - * 数据抽象 + 控制抽象 不同的程序设计语言范型语义 程序设计语言范型横向教学模式 内容 1. 简介 2. 参数传递方法 3. 子程序作为参数传递 子程序及其实现 第二章 - * 子程序及其实现 第二章 - * 1.简介 程序控制流的层次分类 表达式中的控制流程 语句的控制流程 程序单元的控制流程 程序单元的控制流程 基本抽象 (第七章) 结构抽象 (第八章) 单元抽象 (第九、十章) 程序设计语言原理(原书第8版) 1.简介 子程序的共同特征: ①每一个子程序只有一个入口 ②在被调用子程序执行期间,调用程序单元被停止, 即在任何时刻只有一个子程序执行 ③当子程序执行结束,控制总是被返回到调用程序 子程序及其实现 第二章 - * 1.简介 子程序设计问题: 使用什么样的参数传递方法? 实参的类型要按照形参的类型进行检测吗? 局部变量是被静态绑定还是动态绑定? 如果子程序可以被作为参数传递,该子程序的引用环境是什么? 子程序的定义是否可以出现在其他子程序的定义之中? 子程序可以重载吗? …… 子程序及其实现 第二章 - * 内容 1. 简介 2. 参数传递方法 2.1 参数传递的语义模型 2.2 参数传递的实现模型 3. 子程序作为参数传递 子程序及其实现 第二章 - * 子程序及其实现 第四章 - * 2.1 参数传递的语义
您可能关注的文档
- 策划人贵在用“易”.doc
- 长沙窗帘布艺 窗帘褶皱鉴赏小课堂下.doc
- 成功销售必备5种.ppt
- 聪明父母必读 培养宝宝.doc
- 打印版公务员面试自我介绍范文【免费下载】.doc
- 大学毕业了看这个,你会后悔的!.doc
- 大学毕业生职业生涯规划的流程与主要内容.doc
- 大学生必读的100本好书.doc
- 大学生必读书推荐书目.doc
- 大学生对名牌看法的调研策划书.ppt
- 2025年天津市冷链物流基地配套道路建设可行性研究报告.docx
- 2025年天津市母婴护理会所专业化服务升级路径可行性研究报告.docx
- 2025年成都市私立医院医美抗衰中心创建可行性研究报告.docx
- 2025年成都市淡化海水在城市道路清洗领域的应用可行性研究报告.docx
- 2025年上海市环卫厨余垃圾生物处理技术应用可行性研究报告.docx
- 2025年天津市花西子针对户外运动妆容的可行性.docx
- 2025年上海市生物发电于秸秆炭化还田协同发电的可行性研究.docx
- 2025年天津市物造纸在可降解农用地膜领域的应用可行性研究报告.docx
- 2025年天津市无人值守充电站智能运维可行性研究报告.docx
- 2025年天津市竹荪种植连作障碍防治技术可行性研究报告.docx
文档评论(0)