77范文网 - 专业文章范例文档资料分享平台

广工编译原理课程设计报告,广东工业大学,编译原理课设,13级

来源:网络收集 时间:2020-05-23 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

课程设计报告

课程名称 编译原理 题目名称 PL/0编译器的扩充和修改 学生学院 计算机学院 专业班级 计算机科学与技术13(一) 学 号 31130057xx 学生姓名 xxxx 指导教师 张巍

2015 年 12 月 27日

实验目的与要求

对PL/0作以下修改扩充:

(1)扩充赋值运算:+=,-=, *= 和 /= (2)扩充语句(Pascal的FOR语句):

FOR <变量>:=<表达式>STEP<表达式> UNTIL<表达式>Do<语句> 选做内容(成绩评定范围扩大到:“优”和“良”)

增加 注释; 注释由/*和*/包含;

一、 实验环境与工具

1、源语言:PL/0语言,PL/0语言是PASCAL语言的子集,它的编译程序是一个编译解析执行系统,后缀名为.PL0;

2、目标语言:生成文件后缀为*.COD的目标代码 3、实现平台:Borland C++Builder 6 4、运行平台:Windows 7

同学们如果需要源代码,和测试文件可以去CSDN网站上搜索出我上传的文件以作参考。并且在此word附上一些心得给大家。 二、 设计方案

1、 结构设计说明

(1)PL/0 语言编译器

PL/0语言可看成是PASCAL语言的子集,它的编译程序是一个编译解释执行系统。PL/0的目标程序为假想栈式计算机的汇编语言,与具体计算机无关。

格 管 理 函 数 PL/0 源程序 出 错 处 理 函 数 目标代码生成程序目标代码生成程序目标代码生成程序目标代码生成程序目标代码生成程序

(2)PL/0编译程序的语法分析过程BLOCK是整个编译过程的核心。这里根据编译程序的总体流程图,来弄清BLOCK过程在整个编译程序中的作用。总流程图如下图所示:

PL/0 的编译程序采用一趟扫描方式,以语法分析程序为核心,词法分析程序和代码生 成程序都作为一个独立的过程,当语法分析需要读单词时就用词法分析程序,而当语法分析

正确需生成相应的目标代码时,则调用代码生成程序。此外,用表格管理程序建立变量,常

量和过程标识符的说明与引用之间的信息联系。用出错处理程序对词法和语法分析遇到的错

误给出在源程序中出错的位置和错误性质。

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

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库广工编译原理课程设计报告,广东工业大学,编译原理课设,13级在线全文阅读。

广工编译原理课程设计报告,广东工业大学,编译原理课设,13级.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/1069084.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: