社区
数据结构与算法
帖子详情
【遇到障碍,寻求解答】构建一个把算术表达式从中缀表示翻译成前缀表示的语法制导翻译方案
everysports
2009-09-10 02:41:55
构建一个语法制导翻译方案,该方案把算术表达式从中缀表示方式翻译成运算符在运算分量之前的前缀表示方式。例如,-xy是表达式x-y的前缀表示法。给出输入9-5+2和9-5*2的注释分析树。
另:谁有《编译原理》(龙书) 第一版或第二版的习题答案,可以给我发一份吗,非常感激!
email:everysports@sohu.com
...全文
458
5
打赏
收藏
【遇到障碍,寻求解答】构建一个把算术表达式从中缀表示翻译成前缀表示的语法制导翻译方案
构建一个语法制导翻译方案,该方案把算术表达式从中缀表示方式翻译成运算符在运算分量之前的前缀表示方式。例如,-xy是表达式x-y的前缀表示法。给出输入9-5+2和9-5*2的注释分析树。 另:谁有《编译原理》(龙书) 第一版或第二版的习题答案,可以给我发一份吗,非常感激! email:everysports@sohu.com
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zaiyideng
2010-06-20
打赏
举报
回复
已知一算术表达式的中缀形式为A+B*C-D/E,后缀形式为ABC*+DE/-,求其前缀形式为?
everysports
2009-09-12
打赏
举报
回复
这里搞编译的人不多吗,这东西要没啥用,暂时我就不看了,节省点时间。
everysports
2009-09-10
打赏
举报
回复
不是编程实现,而只是构建一个语法制导翻译方案和给出注释分析树.
PeacefulBY
2009-09-10
打赏
举报
回复
用栈维护:http://hi.baidu.com/%B5%FB%C6%C6%D1%E6%B3%BA/blog/item/b0db393dd1507ce93d6d9795.html
everysports
2009-09-10
打赏
举报
回复
主要是给出注释分析树,看看和我想的一不一样,这书没答案,让人看着没底~~
基于
语法制导翻译
的
表达式
转换编译器
三、设计要求 1、使用模块化设计思想来设计该编译器; 2、词法分析模块用于读入输入串,并将其转换成供语法分析模块使用的记号流。其中包括滤掉空格和注释、识别常数、识别标识符和关键字等功能; 3、要求在语法分析模块中利用
语法制导翻译
技术完成具体的
中缀
表达式
到后缀
表达式
的翻译,其中包括按前述翻译器的规格说明
构建
对应
表达式
、项、因子的非终结符expr、term和factor的函数以及检查记号是否匹配的函数;并在不匹配时调用错误处理模块; 4、要求符号表管理模块主要完成符号表对应数据结构的具体实现功能; 5、错误处理模块负责报告错误信息及位置,并终止分析过程; 6、输出模块完成翻译后所得到的后缀
表达式
的输出。 四、运行结果 1、从键盘输入任意
中缀
表达式
,如: 4 - 5 * 6 DIV 4 + 8 MOD 2 输出相应的后缀
表达式
: 456*4DIV-82MOD+ 1、 若键盘输入串为非
中缀
表达式
时,如: 4 !+* 5 - 6 DIV 4 + 8 MOD 2 输出相应语法错误报告信息,并停止语法分析,如: line 1 : compiler error !
编译原理2.3习题 语法制导分析[C++]
编译原理习题整理~🥝🥝
2.3 节的练习
2.3 节的练习 2.3.1
构建
一个
语法制导翻译
方案
,该
方案
把算数
表达式
从
中缀
表达式
翻译成
前缀
表达式
。
解答
产生式: expr -> expr + term | expr - term | term term -> term * factor | term / factor | factor fact...
SDUTOJ 2484
算术
表达式
的转换(栈)
算术
表达式
的转换 Time Limit: 1000MS Memory limit: 65536K 题目描述 小明在学习了数据结构之后,突然想起了以前没有解决的
算术
表达式
转化成后缀式的问题,今天他想解决一下。 因为有了数据结构的基础小明很快就解出了这个问题,但是他突然想到怎么求出
算术
表达式
的
前缀
式和
中缀
式呢?小明很困惑。聪明的你帮他解决吧。 输
算术
表达式
的转换2484
(一)对于
中缀
表达式
向
前缀
表达式
的转换:需要两个栈,
一个
栈存储字母,另
一个
栈存储运算符;并且
前缀
表达式
是从右向左开始的(后缀
表达式
是从左向右开始的)当
遇到
字母的时候,进栈1,当
遇到
运算符的时候,进栈2,这时候进栈2是有条件的: (1)如果当前的运算符是加减,而栈2的top是乘除,这时候要把栈2的top元素转移到栈1中,然后当前的元素进栈2; (2)当当前的元素是左括号的时候要去找右括号,...
数据结构与算法
33,010
社区成员
35,327
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章