指针类型在SNL语言中的实现
| 第一章 绪论 | 第1-10页 |
| ·研究的背景 | 第8页 |
| ·研究的主要目的 | 第8页 |
| ·本文完成的主要工作 | 第8-10页 |
| 第二章 词法分析程序 | 第10-12页 |
| ·概述 | 第10页 |
| ·SNL 语言的字母表及正则表达式 | 第10-11页 |
| ·词法分析程序的任务 | 第11页 |
| ·指针类型的词法分析 | 第11页 |
| ·词法分析程序的实现 | 第11-12页 |
| 第三章 语法分析 | 第12-23页 |
| ·概述 | 第12页 |
| ·递归下降分析程序构造方法 | 第12-13页 |
| ·SNL 语言的语法图 | 第13-18页 |
| ·指针类型的语法分析 | 第18-22页 |
| ·普通类型的语法分析 | 第19-20页 |
| ·指针类型的语法分析 | 第20-21页 |
| ·指针变量的使用 | 第21-22页 |
| ·语法分析程序的实现 | 第22-23页 |
| 第四章 语义分析 | 第23-42页 |
| ·语义分析的基础 | 第23-28页 |
| ·语义分析内容 | 第23-24页 |
| ·标识符和类型的内部表示 | 第24-26页 |
| ·符号表的结构 | 第26-28页 |
| ·符号表的局部化以及建立和查找 | 第26-27页 |
| ·符号表的界面 | 第27-28页 |
| ·指针类型的语义分析 | 第28-33页 |
| ·指针类型的内部表示 | 第28-29页 |
| ·指针类型定义的语义分析 | 第29-30页 |
| ·指针变量的使用在语义上的检查 | 第30-32页 |
| ·超前声明、回填时机及回填算法 | 第32-33页 |
| ·类型检查 | 第33-42页 |
| ·一般类型的等价性检查 | 第33-40页 |
| ·指针类型的等价检查 | 第40-41页 |
| ·错误处理 | 第41-42页 |
| 第五章 运行时环境 | 第42-49页 |
| ·目标机的模型 | 第42-43页 |
| ·目标机的指令及格式 | 第43-45页 |
| ·解释程序及执行 | 第45页 |
| ·解释程序执行的实例 | 第45-49页 |
| 第六章 运行时的存储空间 | 第49-65页 |
| ·运行时的存储空间的结构 | 第49页 |
| ·运行时的存储空间的分配 | 第49-65页 |
| ·静态区的存储分配 | 第50页 |
| ·栈区的存储分配 | 第50-51页 |
| ·堆区的存储分配 | 第51-52页 |
| ·动态空间(堆区空间)管理 | 第52-59页 |
| ·概述 | 第52-55页 |
| ·分配和释放算法 | 第55-59页 |
| ·运行时的过程活动记录与栈区的组织结构 | 第59-65页 |
| ·过程的活动记录 | 第59-60页 |
| ·动态链(DL) | 第60-61页 |
| ·变量的访问 | 第61-65页 |
| 第七章 目标代码生成 | 第65-70页 |
| ·非指针类型的目标代码生成 | 第65-68页 |
| ·声明的处理 | 第66页 |
| ·赋值语句 | 第66页 |
| ·过程调用 | 第66-67页 |
| ·while 语句 | 第67页 |
| ·if 语句 | 第67-68页 |
| ·for 语句 | 第68页 |
| ·指针类型的目标代码生成 | 第68-70页 |
| 第八章 实例 | 第70-75页 |
| ·汉诺塔例子 | 第70-71页 |
| ·二叉树排序 | 第71-75页 |
| 第九章 总结 | 第75-76页 |
| 参考文献 | 第76-77页 |
| 致谢 | 第77-78页 |
| 摘要 | 第78-81页 |
| Abstract | 第81-84页 |