下载此文档

编译原理课程设计.doc


文档分类:IT计算机 | 页数:约20页 举报非法文档有奖
1/20
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/20 下载此文档
文档列表 文档介绍
编译原理课程设计
课程名称编译原理
题目编译原理课程设计
学院____ 计算机_____
专业班级_
学号
学生姓名______ _ __
辅导教师______ ___ ___
2013年1月
目录
一、编译原理课程设计内容
(一)基本内容 3
(1)扩充赋值运算:+= 和-= 4
(2)扩充语句(Pascal的FOR语句): 4
FOR <变量>:=<表达式> STEP <表达式>UNTIL <表达式> DO <语句> 4
(3)增加运算:++ 和--。 4
(二)选做内容 4
(1)增加类型 4
(2)扩充函数: 4
(3)增加一维数组类型(可增加指令)。 4
(4)其他典型语言设施。 4
二、实验环境与工具
(一)计算机及操作系统 4
(二)程序设计语言 4
(三)教学型编译程序 4
三、设计方案
(一)概述:源、目标语言,实现工具(平台),运行平台 4
(二)结构设计说明:各功能模块描述 4
(三)主要成分描述 6
1、符号表 6
2、运行时存储组织和管理 7
3、语法分析方法 8
4、中间代码表示 9
四、开发过程和完成情况
(一)本次课程设计实现的内容有: 10
1、基本内容 10
2、选作内容 10
(二)设计分析 10
1. 扩充赋值运算: 10
++, --运算符功能 10
3. FOR <变量>:=<表达式> STEP <表达式>UNTIL <表达式> D O<语句> 15
五、测试
+=、-=语句功能测试 17
1)测试文件 17
2)测试结果: 17
<变量>:=<表达式> STEP <表达式>UNTIL <表达式> DO <语句> 18
1)测试文件 18
2)测试结果 18
++、--语句功能测试 19
1)测试代码 19
2)测试结果 19
六、问题讨论和体会
一、编译原理课程设计内容
(一)基本内容(成绩范围:“中”、“及格”或“不及格”)
(1)扩充赋值运算:+= 和-=
(2)扩充语句(Pascal的FOR语句):
FOR <变量>:=<表达式> STEP <表达式>UNTIL <表达式> DO <语句>
(3)增加运算:++ 和--。
(二)选做内容(成绩评定范围扩大到:“优”和“良”)
(1)增加类型:①字符类型; ②实数类型。
(2)扩充函数:①有返回值和返回语句;②有参数函数。
(3)增加一维数组类型(可增加指令)。
(4)其他典型语言设施。
二、实验环境与工具
(一)计算机及操作系统:PC机, WindowsXP
(二)程序设计语言:C
(三)教学型编译程序:PL/0
三、设计方案
(一)概述:源、目标语言,实现工具(平台),运行平台
PL/0语言是Pascal语言的一个子集,我们这里分析的PL/0的编译程序包括了对PL/0语言源程序进行分析处理、编译生成类PCODE代码,并在虚拟机上解释运行生成的类PCODE代码的功能。
(二)结构设计说明:各功能模块描述

PL/0的编译程序和目标程序的解释执行程序可用Pascal,C或其他语言书写,因此PL/0语言可再配备相应书写语言的任何机器上实现。编译过程采用一趟扫描方式,以语法语义分析程序为核心,词法分析程序和代码生成程序都作为一个独立的过程,当语法分析需要读单词时就用词法分析程序,而当语法分析正确需生成相应的目标代码时,则调用代码生成程序。此外,用表格管理程序建立变量,常量和过程标识符的说明与引用之间的信息联系。用出错处理程序对词法和语法分析遇到的错误给出在源程序中出错的位置和错误性质。当源程序编译正确时,PL/0编译程序自动调用解释执行程序,对目标代码进行解释执行,并按用户程序要求输入数据和输出运行结果。
PL0程序总流程图:
PL/0编译程序(包括主程序)是由18个嵌套及并列的过程或函数组成,现分别简要给出这些函数的功能及它们的层次结构。
出错处理
表格管理程序
词法分析程序
语法语义分析程序
代码生成程序



过程或函数名
简要功能说明
pl0
主程序
error
出错处理,打印出错位置和错误编码
getsym
词法分析,读取一个单词
getch
漏掉空格,读取一个字符
gen
生成目标代码,并送入目标程序区
test
测试当前单词符号是否合法
block
分程序分析处理过程
enter
登录名字表
position(函数)
查找标识符在名字表中的位置
constdeclaration
常量定义处理
vardeclaration
变量说明处理

编译原理课程设计 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数20
  • 收藏数0 收藏
  • 顶次数0
  • 上传人qiang19840906
  • 文件大小375 KB
  • 时间2018-02-22