2字母28字母 把词法分析设计成一个独立程序 (1)组织成一遍扫描(2)作为语法分析和语义分析的子程序为了构造词法分析器要研究构词法每种词类的结构模式以及识别它的数学模型——有限自动机它的模拟程序可以作为词法分析器的控制程序3?2 ?1确定的有限自动机(DFA) 3?2 ?2构造识别单词的DFA3?2 ?3 编写词法分析程序二? 定义3.1 一个确定的有限自动机 M(记 作DF
#
#
8e0410数字1 词法分析程序的功能 源程序 单词序列 单词的词类和属性 (词类符号单词的属性值) 词法分析程序作为一个独立子程序(1)语法分析程序的子程序
3assignassignE→-E1 E→(E1) E→id id cid b 912resultarg2arg2P→{offset:0} D D→D D D→id :T{enter(offset) offset:=offset} T→integer{ :=integer := 4} T→real{:real :
目标程序 优 化PROGRAM m VAR abc:real BEGIN read(bc) a:=bc60 write(a) END. cc生成目标代码前端和后端
::语法制导定义:(接上页)产生式E→not E1 :=gen(goto ) switch语句翻译成的三地址代码控制流程: 1.对表达式求值 2.在列出的valuE1 valuE2…value n-1 这些值中寻找与表达式的值相等的值 如果没有这样的值存在则让缺席值 与表达式匹配 3.执行在(2)中寻找到的值相联系的语
单击此处编辑母版标题样式单击此处编辑母版文本样式第二级第三级第四级第五级语法制导的翻译1本章重点语法制导定义S属性定义L属性定义语法制导的翻译方案设计语法制导定义和翻译方案的关系自底向上实现L属性的SDD2语法制导的翻译5.1 语法制导定义5.2 SDD的求值顺序5.3 语法制导的翻译方案3第五章 语法制导的翻译翻译的任务首先是语义分析和正确性检查若正确则翻译成中间代码或目标代码基本思想语法结构
#
学时与参考教材学习成果__以学生为中心编译程序piler)高级语言程序→汇编机器语言程序表 格 管 理2语法分析=中间代码(intermediate Code)例:id1id2id3三地址码的另一种表示形式T1=id2id3T2=id1T17表格管理语法分析综合9 编译的遍(Pass)词法规则说明(C程序)小结
违法有害信息,请在下方选择原因提交举报