电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

中间代码生成实验报告VIP免费

中间代码生成实验报告_第1页
1/17
中间代码生成实验报告_第2页
2/17
中间代码生成实验报告_第3页
3/17
一 、 实 验 目 的 通 过 在 实 验 二 的 基 础 上 , 增 加 中 间 代 码 生 成 部 分 , 使 程 序 能 够 对 实 验 二 中 的 识 别 出 的 赋 值 语 句 , if 语 句 和 while 语 句 进 行 语 义 分析 , 生 成 四 元 式 中 间 代 码 。 二 、 实 验 方 法 实 验 程 序 由 c 语 言 完 成 , 在 Turboc 2.0 环 境 中 调 试 通 过 。 语 义 分 析 程 序 的 基 本 做 法 是 对 文 法 中 的 每 个 产 生 式 分 别 编 写一 个 语 义 分 析 子 程 序 , 当 程 序 语 法 部 分 进 行 推 倒 或 规 约 时 , 就 分 别调 用 各 自 的 语 义 分 析 程 序 。 当 语 法 分 析 结 束 时 , 语 义 分 析 也 就 结 束了 。 在 本 实 验 程 序 中 , 当 语 法 分 析 部 分 识 别 出 语 法 正 确 的 句 子 时 ,就 进 入 content 函 数( 当 语 法 分 析 识 别 出 不 正 确 的 句 子 时 ,不 进 入content 函 数 , 也 就 是 不 进 行 语 义 分 析 ), 然 后 根 据 句 子 的 类 型 进行 分 类 , 进 入 不 同 的 语 义 处 理 部 分 。 对 于 赋 值 语 句 ,关 键 是 产 生 正 确 的 处 理 算 术 表 达 式 E 的 四 元 式 。程 序 中 的 ec 函 数 的 功 能 就 是 产 生 算 术 表 达 式 的 四 元 式 , 在 ec 函数 中 使 用 了 两 个 栈 idshed,opshed, 分 别 是 算 术 表 达 式 的 数 据 栈和 符 号 栈 。 每 次 提 取 一 个 数 字 和 一 个 算 符 , 然 后 将 算 符 与 与 栈 顶 算符 进 行 优 先 级 比 较 , 优 先 级 高 则 将 单 前 数 字 和 算 符 进 栈 , 低 或 者 相等的 话则 将 当 前 栈 顶 元 素进 行 合并, 产 生 四 元 式 。 直至整个 算 术 表达 式 结 束 。 其中 还有一 些细节问题, 具体的 做 法 可以参看程 序 。 对 于 实 验 给定的 if 语 句 的 文 法 格式 , 条件判断式 C 只中 可能是 >或 者 <=两 种关 系, 不 可能 是 布 尔 表 达 式 , 这 ...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

中间代码生成实验报告

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部