CML指针类型编译程序的设计与实现
| 中文摘要 | 第1-7页 |
| 英文摘要 | 第7-13页 |
| 引言 | 第13-14页 |
| 第一章 绪论 | 第14-15页 |
| ·课题研究的背景 | 第14页 |
| ·课题研究的主要目的 | 第14页 |
| ·论文完成的主要工作 | 第14-15页 |
| 第二章 词法分析 | 第15-18页 |
| ·词法分析概述 | 第15页 |
| ·CML 语言所定义的词法 | 第15-16页 |
| ·词法分析的主要任务 | 第16页 |
| ·指针类型的词法分析 | 第16页 |
| ·词法分析程序的实现 | 第16-18页 |
| 第三章 语法分析 | 第18-27页 |
| ·语法分析概述 | 第18页 |
| ·LL(1)语法分析方法的实现 | 第18页 |
| ·CML 语言的语法图 | 第18-23页 |
| ·指针类型的语法分析 | 第23-25页 |
| ·普通类型的语法分析 | 第23-24页 |
| ·指针类型的语法分析 | 第24页 |
| ·指针变量的使用 | 第24-25页 |
| ·语法分析程序的实现 | 第25-27页 |
| 第四章 语义分析 | 第27-45页 |
| ·语义分析的基础 | 第27-31页 |
| ·语义分析的内容 | 第27-28页 |
| ·标识符和类型的内部表示 | 第28-29页 |
| ·符号表的结构 | 第29-31页 |
| ·符号表的局部化以及建立和查找 | 第30页 |
| ·符号表的界面 | 第30-31页 |
| ·指针类型的语义分析 | 第31-35页 |
| ·指针类型的内部表示 | 第31-32页 |
| ·指针类型定义的语义分析 | 第32-33页 |
| ·指针变量的使用在语义上的检查 | 第33-34页 |
| ·超前声明、回填时机及回填算法 | 第34-35页 |
| ·类型检查 | 第35-45页 |
| ·一般类型的等价性检查 | 第36-42页 |
| ·指针类型的等价检查 | 第42-43页 |
| ·错误处理 | 第43-45页 |
| 第五章 运行时环境 | 第45-52页 |
| ·目标机的模型 | 第45-46页 |
| ·目标机的指令及格式 | 第46-48页 |
| ·解释程序及执行 | 第48页 |
| ·解释程序执行的实例 | 第48-52页 |
| 第六章 运行时的存储空间 | 第52-67页 |
| ·运行时的存储空间的结构 | 第52页 |
| ·运行时的存储空间的分配 | 第52-67页 |
| ·静态区的存储分配 | 第52-53页 |
| ·栈区的存储分配 | 第53-54页 |
| ·堆区的存储分配 | 第54-55页 |
| ·动态空间(堆区空间)管理 | 第55-62页 |
| ·概述 | 第55-57页 |
| ·分配和释放算法 | 第57-62页 |
| ·运行时的过程活动记录与栈区的组织结构 | 第62-67页 |
| ·过程的活动记录 | 第62-63页 |
| ·动态链(DL) | 第63页 |
| ·变量的访问 | 第63-67页 |
| 第七章 目标代码生成 | 第67-72页 |
| ·非指针类型的目标代码生成 | 第67-69页 |
| ·声明的处理 | 第67-68页 |
| ·赋值语句 | 第68页 |
| ·过程调用 | 第68页 |
| ·while 语句 | 第68-69页 |
| ·if 语句 | 第69页 |
| ·for 语句 | 第69页 |
| ·指针类型的目标代码生成 | 第69-72页 |
| 第八章 实例 | 第72-74页 |
| 第九章 总结 | 第74-75页 |
| 参考文献 | 第75-76页 |
| 致谢 | 第76-77页 |
| 导师及作者简介 | 第77页 |