程序设计语言与编译教学指导

程序设计语言与编译教学指导

ID:38680573

大小:1015.50 KB

页数:25页

时间:2019-06-17

程序设计语言与编译教学指导_第1页
程序设计语言与编译教学指导_第2页
程序设计语言与编译教学指导_第3页
程序设计语言与编译教学指导_第4页
程序设计语言与编译教学指导_第5页
资源描述:

《程序设计语言与编译教学指导》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、程序设计语言与编译——语言的设计和实现(第2版)教师用教学参考指南龚天富编(本内容版权归作者所有,为非买品,只免费提供给教师教学之用,使用者不得随意翻印)本指南包括三个部分。第1部分给出本教材的知识点与教学重点;第2部分为必须布置的习题的参考答案。书中出现的程序不是教学重点,只需讲清思路即可。第3部分为参考试卷及其参考答案。第1部分知识点与教学重点笔者将各章的知识点分为三级——重点理解、理解和知道。对重点理解的知识点应讲深讲透,对知道的知识点可以不讲,或在其他课程(如高级程设计语言概论)中去讲,或由学生自学。第1章绪论重点理解引言,

2、强制式语言,程序单元。知道程序设计语言发展简介(学生必须自学)。第2章数据类型重点理解引言,内部类型,用户定义类型,Pascal数据类型结构,C语言类型结构,SIMULA67语言类机制,CLU语言的抽象数据类型,C++语言的抽象数据类型,类型检查,类型转换,类型等价。知道Ada语言的抽象数据类型(自学),Modula-2语言的抽象数据类型(自学),实现模型(自学)。第3章控制结构重点理解引言,顺序结构,选择结构,重复结构,语句级控制结构分析,显式调用从属单元,异常处理(异常处理的5个问题),PL/1语言的异常处理机制,CLU语言的异

3、常处理机制,Ada语言异常处理机制(主要讨论三种语言异常处理机制的异同),SIMULA67语言协同程序,并发单元,信号灯,会合。知道管程。第4章程序语言的设计重点理解全章。第5章非过程式程序设计语言知道全章(可以不要求,自学,作为高级程序设计语言概论课的内容)。第6章形式语义学简介知道全章(同第5章)。第7章编译概述重点理解全章。·25·第8章词法分析重点理解全章。第9章自上而下的语法分析重点理解回溯分析法,预测分析法。理解递归下降分析法。第10章自下而上的语法分析重点理解全章。第11章语义分析和中间代码生成重点理解全章。第12章代

4、码优化和目标代码生成重点理解全章。第13章运行时存储空间的组织重点理解程序的存储空间,栈式分配。理解静态分配。知道符号表(自学)。附录AJava语言概述知道整个附录A(自学)。第2部分部分习题参考答案本书习题可分为思考题和必做题,这里仅给出必做题的参考答案。习题11-1至1-11均为思考题。习题22-1至2-14均为思考题。习题33-1至3-13均为思考题。习题44-1至4-4均为思考题。4-5解:上下文有关文法(1型文法),产生的语言L(G){=aibici

5、i≥1,i为整数}4-6解:3型文法,L(G)={ai

6、i≥1,i为奇数

7、}4-7解:2型文法,L(G)={aibi

8、i≥1,i为整数}4-8解:1型文法,L(G)={aibici

9、i≥1,i为整数}4-9解:1.最左推导最右推导SÞ(A)Þ(B)Þ(SdB)SÞ(A)Þ(B)Þ(SdB)Þ((A)dB)Þ((B)dB)Þ(SdS)Þ(Sda)Þ((S)dB)Þ((b)dB)Þ((A)daÞ((B)da)Þ((b)dS)Þ((b)da)Þ((s)daÞ((b)da)·25·2.语法树4-10解:1.因为存在推导SÞSbFÞSbPÞSbcÞFbcÞFaPbc所以FaPbc是文法G(S)的一个句型。2.语法树

10、4-11解:因为串aaabaa可有下列两棵不同的语法树所以文法G(S)是二义文法。4-12解:因为串i(*可有下列两棵不同的语法树·25·4-13解:假定所设计的语言面向的机器为一般通用机。按照题目给出的问题,如果不考虑输入和输出语句,那么所要设计的语言仅包含字符串数据类型和赋值语句。语言设计如下:<程序>→<分程序><分程序>→begin<语句说明表>;<执行语句>end<说明语句表>→<说明语句>

11、<说明语句表>;<说明语句><说明语句>→<变量说明><变量说明>→string<变量表>说明:string是变量的类型,表示变量为

12、字符串。<字符串>→<字符>

13、<字符串><字符><字符>→一切可由键盘输入的字符<变量表>→<变量>

14、<变量表>,<变量><执行语句表>→<执行语句表>;<执行语句>

15、<执行语句><执行语句>→<赋值语句><赋值语句>→<变量>:=<表达式><表达式>→<变量>

16、<表达式>‖<变量>说明:符号“‖”为字符串连接运算符,例如字符串abc和字符串xyz经过连接运算的结果为abcxyz。<变量>→<标识符><标识符>→<字母>

17、<标识符><字母>

18、<标识符><数字><字母>→a

19、b

20、…

21、x

22、y

23、z<数字>→0

24、1

25、2

26、3

27、4

28、5

29、6

30、7

31、

32、8

33、9说明:本语言未设置任何控制语句,若要进行较为复杂的程序设计,必须增加控制语句,本语言的程序只能完全顺序执行。例:将字符串abc和xyz连接成字符串abcxyz。beginstringA1,A2,A3,A4;stringB1,B2

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。