没有合适的资源?快使用搜索试试~ 我知道了~
编译器设计 6 月 4 日:实验 4。优化 Brainfuck 优化您在实验室 3 中开发的编译器和解释器。 修改 CommandNode 使其包含一个计数器(大概是一个 int 或类似的)。 稍微修改解析器,使其仅在遇到相同命令的完整运行后才发出命令节点。 (例如,----- 变成 CommandNode(\'-', 5)) 相应地修改解释器和编译器。 简而言之:做一个优化,在 Brainfuck 代码上执行。 然后,使用CommandNode优化掉某些循环(例如, [-]或[+] )以将零分配给当前内存位置。 修改Command以包含另一种命令类型: ZERO 修改CommandNode构造函数 要么使用优化器访问者遍历树进行替换,要么预处理输入以用新节点类型替换[-]或[+] 。 提示 使用peek检查何时将命令节点添加到当前容器。 如果您的编译器生成的代码包含数字
资源推荐
资源评论
资源评论
AaronGary
- 粉丝: 22
- 资源: 4577
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功