- 6
- 0
- 约3.84千字
- 约 23页
- 2018-11-05 发布于广西
- 举报
第一章 绪论 程序设计语言的翻译方式 程序设计语言的翻译方式 程序设计语言的翻译方式 编译程序的工作一般分为五个阶段: 词法分析 语法分析 中间代码产生 代码优化 目标代码产生 同时还会伴有表格处理和出错处理。其中中间代码生成和代码优化不是每个编译程序必需的。 1. 词法分析 任务: 输入源程序,对构成源程序的字符串进行扫描和分解,识别出一个个单词符号。 依循的原则:构词规则 FOR I := 1 TO 100 DO 保留字 标识符 等符 整常数 保留字 整常数 保留字 2. 语法分析 任务:在词法分析的基础上,根据语言的语法规则把单词符号串分解成各类语法单位。 依循的原则:语法规则 Z := X + 0.618 * Y 算术表达式,赋值语句 3. 中间代码产生 任务:对各类不同语法范畴按语言的语义进行初步翻译。 依循的原则:语义规则 语法规则的表示:BNF 中间代码:三元式,四元式,树形结构等 Z:=X + 0.618 * Y 翻译成四元式为 (1) * 0.618 Y T1 (2) + X T1 T2 (3) := T2 _ Z 4. 优化 任务:对于前阶段产生的中间代码进行加工变换,以期在最后阶段产生更高效的目标代码。 依循的原则:程序的等价变换规则 中间代码(一) 序号 OPR OPN1 OPN2 RESULT 注释 (1) := 1 K K:=1 (2) j 100 K (10) if (100K) goto (10) (3) + I 1 X X:=I+1 (4) * 10 K T1 T1:=10*K (5) + I T1 M M:=I+T1 (6) * 10 K T2 T2:=10*K (7) + J T2 N N:=J+T2 (8) + K 1 K K:=K+1 (9) j (2) goto (2) (10) 转换后的等价代码(二) 序号 OPR OPN1 OPN2 RESULT 注释 (1) + I 1 X X:=I+1 (2) := I M M:=I (3) := J N N:=J (4) := 1 K K:=1 (5) j 100 K (10) if (100K) goto (10) (6) + M 10 M M:=M+10 (7) + N 10 N N:=N+10 (8) + K 1 K K:=K+1 (9) j (5) goto (5) (10) 5. 目标代码产生 任务: 把中间代码变换成特定机器上的目标代码。 依赖于硬件系统结构和机器指令的含义 目标代码三种形式: 绝对指令代码: 可直接运行 可重新定位指令代码: 连接装配, 汇编指令代码: 需要进行汇编 5. 目标代码产生 例: b=a+2 MOV a, R1 ADD #2, R1 MOV R1, b 0001 01 00 * 0011 01 10 0100 01 00 * L 0001 01 00 0011 01 10 0100 01 00 2. 表格和表格管理 常见的表格:符号名表,常数表,标号表,入口名表,过程引用表。 其它还有:循环特征表、等价名表、公用链表、格式表、中间代码表等。 格式: 3. 出错处理 任务:如果源程序有错,编译程序应发现错误并报告给用户。 完成:由专门的出错处理程序来完成。 错误类型: 语法错误:在词法或语法分析阶段检测 语义错误:在语义分析阶段检测 for (i=1, i=k, i++) 4.编译程序的逻辑结构:遍(pass) 概念:所谓“遍”, 就是对源程序或源程序的中间表示从头到尾扫描一次,并转换成另一紧邻的等价物的全过程。 阶段与遍是不同的概念。一遍可以由若干段组成,一个阶段也可以分若干遍来完成。 *
您可能关注的文档
- 比的基本性质(精品·公开课件).ppt
- 比的基本性质课件(适合人教版)(精品·公开课件).ppt
- 比较级&虚拟(精品·公开课件).ppt
- 比较少见的英文咨询报告(精品·公开课件).ppt
- 比较优势贸易理论(精品·公开课件).ppt
- 比较语言学 绪论(精品·公开课件).ppt
- 比较政治学绪论(精品·公开课件).ppt
- 比例尺公式(精品·公开课件).ppt
- 比赛场次(精品·公开课件).ppt
- 比赛1(精品·公开课件).ppt
- 2025年全国演出经纪人员资格认定考试试卷带答案(研优卷).docx
- 2025年全国演出经纪人员资格认定考试试卷完整版.docx
- 2025年全国演出经纪人员资格认定考试试题库及完整答案.docx
- 2025年全国演出经纪人员资格认定考试试卷完美版.docx
- 2025年全国演出经纪人员资格认定考试试卷含答案(实用).docx
- 2025年全国演出经纪人员资格认定考试试卷及答案(各地真题).docx
- 2025年下半年内江市部分事业单位公开考试招聘工作人员(240人)备考题库附答案.docx
- 2025年全国演出经纪人员资格认定考试试卷及答案1套.docx
- 2025年下半年四川成都市郫都区面向社会引进公共类事业单位人员2人备考题库最新.docx
- 2025年下半年内江市部分事业单位公开考试招聘工作人员(240人)备考题库附答案.docx
最近下载
- 人教版生物学选择性必修3全册教学课件.pptx
- 桑黄编制说明.doc VIP
- 2025年重庆市中考物理试卷真题(含答案解析).docx
- 数学试卷【新高考I卷】【山东卷】【高考真题】山东省2025年山东省普通高等学校招生全国统一考试(新I卷)(6.7-6.9).docx VIP
- 《上下五千年(六)》青少年教育文学丛书.pdf VIP
- 高考评价体系下基于核心素养素养2020年高考化学后期复习策略讲座.ppt VIP
- 《海上风电场工程风电机组基础设计规范》.pdf VIP
- 数学试卷答案【新高考I卷】【山东卷】【高考真题】山东省2025年山东省普通高等学校招生全国统一考试(新I卷)(6.7-6.9).docx VIP
- 复变函数1省公开课金奖全国赛课一等奖微课获奖课件.pptx VIP
- 316L 不锈钢收缩率实验报告.docx VIP
原创力文档

文档评论(0)