版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2020/7/15,1,第10章代码生成,代码生成器的运行时存储管理用于寄存器分配的代码生成算法,代码生成于2020年7月15日,2月10日,代码生成器P513图9.1,输入:(优化)三地址代码和符号表,输出:目标代码,代码生成于2020年7月15日,目标代码形式的绝对机器语言代码,所有绝对地址,可立即执行并重新定位。它很容易生成,但它需要汇编、2020年7月15日、4日、10日的代码生成以及运行时存储管理。上节课的具体实现是P522-528,图9.4-9.6,代码生成于2020年7月15日、5日、10日。至于寄存器分配,只考虑如何在基本块中分配寄存器来改进代码。尽可能计算寄存器中的参考变量值
2、和计算结果,直到寄存器不够用。在离开基本块之前,把寄存器的内容放入内存。基本块后面不再引用的变量所占用的寄存器应该尽快释放。该代码将于2020年7月15日、6日和10日生成。下一个引用信息:X在语句I中是固定的,X可以到达语句J,X在语句J中被引用,假设J是变量X在I中的下一个引用信息,同时假设X在I点是活动的(因为它将在以后被引用),代码生成将在2020年7月15日,7月10日进行,以获得下一个引用信息和基本块中每个变量的活动信息。 并且符号表中每个变量的记录项都有下一个引用信息列和活动信息列,假设每个变量在退出时是活动的,而临时变量是非活动的。 从基本块的出口向前扫描每个三地址语句。具体步
3、骤如下:2020/7/15,8,10代码生成,1。设置初始值,并将每个变量设置为“无下一个引用”、“活动”或“非活动”,2。从基本块的出口向前扫描每个三地址代码(I: X:=(1),将变量x的下一个引用信息和活动信息附加到语句标签I上,并在2020年7月15日、9日和10日生成代码;(2)将变量x的下一个引用信息列和活动信息列分别设置为“无下一个引用”和“非活动”;(3)将变量Y和Z的下一个引用信息和活动信息附加到语句标签I,(4)将变量Y和Z的下一个引用信息列设置为“I”,将活动信息列设置为“active”,代码生成将在2020年7月15日进行。示例:(P539)基本块包含以下四个代码,A、
4、B、C和D是变量。t、u和v是临时变量(1)t :=a-b(2)u 3360=a-c(3)v 3360=t u(4)d :=v u,2020/7/15,11,2020/7/11 F代表“无下一个参考”和“无效”,l代表“有效”, 用下一个参考信息和有效信息标记的三个地址码是:(1)T(3)L :=A(2)L B FL(2)U(3)L :=A FL C FL(3)V(4)L 3360=T FF U(4)L(4)D FL : 10代码生成,简单代码生成算法,只考虑基本块内的目标代码生成,寄存器描述符(针对每个寄存器)记录每个寄存器的当前内容, 地址描述符(运行时为每个名称)记录一个或多个由每个名称存储的地址,不考虑寄存器描述符和地址描述符(采用哪种数据结构)的具体实现,2020/7/15,1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026天津市中小企业服务中心、天津市无线电监测站、天津市工业和信息化稽查总队招聘6名事业单位人员备考题库及完整答案详解(夺冠)
- 精神科护理与管理建议
- 2026春季中国工商银行辽宁分行校园招聘72人备考题库带答案详解(综合题)
- 全科医生就诊规范操作方法
- 北京2013丰台区高考一模试题:语文答案
- 2026广东河源市妇幼保健院招聘合同制专业技术人员25人备考题库及答案详解(历年真题)
- 儿科门诊设施及管理
- 2026上海市信息安全测评认证中心招聘2人备考题库及参考答案详解【典型题】
- 2026内蒙古霍林河机场管理有限责任公司招聘工作人员3人备考题库(预热题)附答案详解
- 补充维生素D科普
- 建筑企业安全生产法律法规培训报告
- 三门峡水利工程案例分析工程伦理
- 吊车参数表完整版本
- 如何提高初中生的地理图解能力
- 中职形体仪态训练的课程设计
- YY/T 1888-2023重组人源化胶原蛋白
- 连锁酒店提高好评数量技巧
- JJG 556-2011轴向加力疲劳试验机
- GB/T 37827-2019城镇供热用焊接球阀
- GB/T 24533-2019锂离子电池石墨类负极材料
- 古代伊斯兰的设计艺术课件
评论
0/150
提交评论