编译原理讲义 (8).ppt
qw****27
亲,该文档总共51页,到这已经超出免费预览范围,如果喜欢就直接下载吧~
相关资料
编译原理讲义 (8).ppt
§8目标代码生成§8目标代码生成本章主要内容8.1代码生成器设计中的问题一、代码生成器的输入二、代码生成器的输出三、存储管理例如:中间代码与目标代码的对应四、指令选择五、寄存器分配六、计算顺序的选择8.2目标机器寻址方式举例三地址语句a:=b+c的代码过程的语义决定了运行时名字如何与存储单元相联系。存储分配策略静态存储分配存储器中活动记录的位置在编译时刻已经确定栈式存储分配当开始执行一个过程时,一个新的活动记录压入栈顶当该过程的活动结束时,其活动记录从栈中弹出活动记录的内容参数、返回值控制链、访问链、机器
编译原理讲义 (8).ppt
...................................................
编译原理讲义 (1).ppt
§1编译概述§1编译概述简介1.1翻译和解释一、程序设计语言高级语言的优点二、翻译程序高级语言程序的编译和执行阶段解释程序同时处理源程序和数据赋值语句P:=I+R*60的解释过程翻译与解释1.2编译程序的组成1.2编译程序的组成编译程序的典型结构一、分析阶段1.词法分析对赋值语句P:=I+R*60的词法分析空格、注释的处理及其他2.语法分析赋值语句P:=I+R*60的分析树语句的递归定义3.语义分析插入转换符的赋值语句P:=I+R*60的语法树赋值语句P:=I+R*60的各分析步骤及其中间结果二、综合阶段
编译原理讲义 (5).ppt
§5类型检查§5类型检查5.1语义分析的概念上下文有关信息的记录与使用动态检查:目标程序运行时进行的检查静态检查:读入源程序、但不执行源程序的情况下进行的检查,包括:类型检查对访问数据的操作和被访问数据的类型进行检查,检查操作的合法性和数据类型的相容性。控制流检查检查控制流语句是否使控制转移到一个合法的位置。一致性检查有些场合要求所定义的对象恰好被定义一次一个标识符在同一程序块中必须而且只能被说明一次CASE语句中用于匹配选择表达式的常量必须各不相同枚举类型定义中的各元素不允许重复有些场合要求标识某结构的
编译原理与技术讲义.ppt
编译原理与技术中间代码生成布尔表达式的翻译布尔表达式的翻译布尔表达式的翻译布尔表达式的翻译id1relopid2(关系表达式)布尔表达式的翻译id(布尔变量)e.g.16a<borc=dandnote>f的三地址码:(100)ifa<bgoto103(101)t1:=0(102)goto104(103)t1:=1//以上为a<b的翻译(104)ifc=dgoto107(105)t2:=0(106)goto108(107)t2:=1//以上为c=d的翻译e.g.16a<borc=dandnote>f的三地址