- 9
- 0
- 约1.53万字
- 约 97页
- 2018-02-17 发布于浙江
- 举报
[理学]07 语义分析和中间代码产生
7.1中间语言 7.2 说明语句 7.3 赋值语句的翻译 7.4 布尔表达式的翻译 7.5 控制语句的翻译 产生式 7.6 过程调用的处理 当生成某些转移语句时可能还不知道该语句的转移目标标号。 存在的问题: 在形成在自下而上的分析过程中,当生成某些跳转指令时暂时不确定跳转目标,而是建立一个链表,把转向这个目标的跳转指令的标号加入这个链表。一旦目标确定之后再把它添入有关的跳转指令中。这种技术称为回填。 问题的解决: E.truelist:E的“真出口”链表 引入的语义属性: E.truelist:E的“假出口”链表 借助于需要回填的四元式的第四区段构造链表 (p)(× , × , × ,0) (q)(× , × , × ,p) (r)(× , × , × ,q) 0为链末标志 地址r是TC链之首 例如,假定E的四元式中需回填“真”出口的有p,q,r三个四元式,这三个四元式可以连成如图所示的一条“真”链。 语义变量和过程: 变量nextquad:指向下一个将要形成但尚未形成的四元式的地址(标号)。初值为1,每当执行一次emit后,自动累增1。 函数makelist(i):创建一个仅含I的新链表,其中I是四元式数组的一个下标(标号);函数返回指向这个链的指针。 函数merge(p1,p2):把以p1和p2为链首的两条链合并为一,作为函数值,回送合并后的链首p2。 过程backpatch
您可能关注的文档
最近下载
- 教育行业教务部教务员教务流程管理手册.docx VIP
- 教育培训机构教学资源保障与管理方案.docx VIP
- 教育培训机构教学设施配置与保障方案.docx VIP
- ISO 9001(FDIS)-2026《质量管理体系——要求》之1:“4组织环境-4.1理解组织及其环境”条款应用(实施)专业指导材料(雷泽佳编写2026A0).docx VIP
- ISO 9001(FDIS)-2026《质量管理体系——要求》(中文版-雷泽佳译-2026年6月).pdf VIP
- 技术文件管理规定.docx VIP
- 教育行业教务部教务员学籍管理流程手册.docx VIP
- 教育培训机构教务部教务员学籍管理手册.docx VIP
- 教育培训教务部教务员教务管理手册.docx VIP
- 教育培训机构教务部教务员教务管理手册.docx VIP
原创力文档

文档评论(0)