代码:

import tkinter as tkroot = tk.Tk()
root.geometry("800x600+50+50")
root.title("中间代码生成")label2 = tk.Label(root, text = "请输入赋值语句:")
label2.place(x=10,y=10)label3 = tk.Label(root, text = "四元式序列:")
label3.place(x=400,y=10)text1 = tk.Text(root,width=35,height=15,bg="#e8e8e8",font="Consolas")
text1.place(x=10,y=50)text2 = tk.Text(root,width=35,height=15,bg="#e8e8e8",font="Consolas")
text2.place(x=400,y=50)def result():text2.delete(1.0,"end")string = text1.get(1.0,"end")list = []i=0t=1while i < len(string):var = string[i:i+5]var1 = 't'+str(t)+var[1:]var2 = var[0:2]+'t'+str(t)+'+-'list.append(var1)list.append(var2)t=t+1i=i+6   i = 0tuple = ()while i < len(list) :if i%2 == 0:tuple = (list[i][4],list[i][3],list[i][5],list[i][0:2])else:tuple = (list[i][1],list[i][2:4],list[i][5],list[i][0])text2.insert("insert",str(tuple)+"\n")i = i+1button1 = tk.Button(root, text = "生成",bg="#e8e8e8",width=5,height=1,padx=5,command=result)
button1.place(x=140,y=10)root.mainloop()

图片:

中间代码生成-四元式相关推荐

  1. java pl0 四元式,【编译原理】c++实现自下而上语法分析及中间代码(四元式)生成...

    写在前面:本博客为本人原创,严禁任何形式的转载!本博客只允许放在博客园(.cnblogs.com),如果您在其他网站看到这篇博文,请通过下面这个唯一的合法链接转到原文! 本博客全网唯一合法URL:ht ...

  2. [编译原理]DO-WHILE循环语句的翻译程序设计(LR(1)方法、输出四元式)C++实现

    题目: DO-WHILE循环语句的翻译程序设计(LR(1)方法.输出四元式) 1 课设任务概述 初始条件: ​ 理论:完成编译原理,数据结构.高级编程语言.汇编语言等相关课程的学习,基于计算机专业知识 ...

  3. LR(1)分析表-语法树-四元式

    这学期的编译原理终于学完了,不愧是号称最难的科目.要用C++从头到尾实现一下小型编译器,还真不容易啊.不过总算是做完了. 首先上文法,这个文法是根据上一篇博客简化的,但还是有一点问题的,暂时发现有一个 ...

  4. 【视频联动】编译原理:写出布尔表达式A or (B and not(C or D)) 的四元式序列。说明:按照控制语句中的布尔表达式翻译

    编译原理:写出布尔表达式A or (B and not(C or D))  的四元式序列.说明:按照控制语句中的布尔表达式翻译 这里是总结的知识点.如果有问题可以下方留言提问,视频已经放到Bilibi ...

  5. C++实现的利用LR(1)分析表对赋值表达式进行语法制导翻译生成四元式及汇编代码

    赋值语句的语法制导翻译 后续已完善算术运算文法.赋值文法.布尔运算文法.if.while.do-while和复合语句文法,编译器项目已上传GitHub,https://github.com/sleep ...

  6. 编译原理 赋值语句翻译成四元式

    赋值语句及算数表达式的翻译 将赋值语句翻译成四元式的语义描述: (1) S-> id:=A (2) A->id (3) A->int (4) A->real (5) A-> ...

  7. 【编译原理】:如何将控制语句翻译成四元式

    如图: 解决这个问题的方法是: 翻译成三元式(逻辑就能翻译) 三元式转换为四元式 四元式结果 Op arg1 arg2 存储变量 知道这个思路之后,我们就能够很快的做出这道题了

  8. 【编译原理】WHILE循环语句的翻译程序设计与实现(递归下降法、输出四元式)(赋值语句的词法分析、语义分析)

    注:本文记录 WHUT-计算机学院-编译原理 课程 课内实践 >>点击查看武汉理工大学计算机专业课程资料汇总 项目下载地址:https://download.csdn.net/downlo ...

  9. 【编译原理】 如何将控制语句翻译成四元式

    如图: 解决这个问题的方法是: 翻译成三元式(逻辑就能翻译) 三元式转换为四元式 四元式结果 Op arg1  arg2  存储变量 知道这个思路之后,我们就能够很快的做出这道题了

  10. 期末考试:编译原理——如何将控制语句翻译成四元式.

    一 例题 二 总结 1. 将原式翻译成三元式(逻辑就能翻译) 2. 三元式转换为四元式(Op arg1 arg2 存储变量) 3. 常见的变化规则 1. 判断语句 2. 赋值语句

最新文章

  1. java if and_Java运算符-if分支语句
  2. measure_profile_sheet_of_light算子说明
  3. AndroidStudio2.2 Preview3中NDK开发之CMake和传统 JNI在目录结构和配置文件上的区别
  4. C++ leetcode 19. 删除链表的倒数第N个节点 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。
  5. oracle批处理参数调用,bat调用jar包并传入多个参数
  6. Join的加强版CountDownLatch
  7. Mysql的B树/B+/B*/R树(补充)
  8. java使用数组排序方法_java数组中的排序问题(冒泡排序方法的实现,及内置排序算法的应用)...
  9. opengl 实时波形显示_OpenGL1------OpenGL概述
  10. 大众mpv_最便宜的大众MPV来啦!1.4T6AT,空间比宝骏730还宽裕
  11. ThinkPHP的pathinfo模式、路径访问模式及URL重写
  12. 2018码云GVP最有价值开源项目-PDMan-2.1.3 发布—免费的国产数据库建模工具(使用)
  13. Unity小组工程实践项目《最强外卖员》策划案纠错文档
  14. CAD梦想画图中的“离散曲线命令”
  15. 怎样在苹果Mac鼠标或触控板上复制和粘贴?
  16. VirtualBox虚拟机下载
  17. android仿美团评论
  18. powershell 启动时报错 profile.ps1 cannot be loaded because running scri
  19. 学了七年Android,连【架构师筑基必备技能】都不知道有什么
  20. 「斜」italics() //使用斜体显示字符串 20140817 ①文本处理

热门文章

  1. ROS 自定义地图导航
  2. can例程 ecu_汽车CAN数据分析ECU通信OBD接口
  3. 免费客户旅程(Customer Journey Mapping) 示例总汇
  4. docker容器怎么设置开机启动
  5. Linux配置DNS域名解析服务
  6. 苹果服务器cpu型号怎么看,iphone6s plus怎么查cpu型号 iphone6s plus查询cpu型号方法
  7. 《华为工作法》6 华为的成功不是一个人的
  8. 51单片机(At89C51)组成,引脚介绍
  9. 2020中国互联网十大人物
  10. HashMap 为什么是2倍扩容?