《软件技术基础教程》(徐士良版)全套PPT电子课件教案-第6章 编译技术
58页1、第6章 编译技术6.1 6.1 编译程序的工作过程编译程序的工作过程6.2 6.2 状态矩阵法的编译过程状态矩阵法的编译过程6.3 6.3 词法分析词法分析6.4 6.4 中间语言表示中间语言表示6.5 6.5 语法的分析与加工语法的分析与加工编译程序是一种将高级语言编写的源程序编译成机器语言程序(称为目标程序)的实用程序。 6.1 编译程序的工作过程 为了将源程序翻译成目标程序,一般 都要包括以下几个步骤。 输入源程序。 对以机内码表示的源程序进行词法分析,辨认出一个个单词符号。 根据源语言的语法规则进行语法 分析。 在实际运行之前,通常还要对目 标程序的各部分进行连接装配 。 对于块结构的语言(如C语言和 FORTRAN语言等),通常是进行分块 编译,分别得到半目标程序,最后可用 装配程序组装成一个完整的程序。 编译程序一般要包含以下几个程序模块。 (1)词法分析程序 (2)语法分析程序 (3)加工程序 (4)优化修饰部分 (5)装配程序或连 接编辑程序6.2 状态矩阵法的编译过程6.2.1 状态矩阵法的基本 原理 所谓“状态”,粗略地说,是表示过去 已经扫描了什么语法成分,以便当
2、遇到新 的语法符号时,在不同的状态下对该语法 符号作出不同的处理。 状态矩阵法的核心是状态矩阵(也称 状态表),如表6.1所示。 6.2.2 状态矩阵的压缩在具体实现状态矩阵法时,为了节省存储空间,通常要对状态矩阵进行压缩。 各列的意义如下: 状态 指状态栈栈顶项中所包含的可能状态。 符号 指当前扫描到的可能符号。 加工子程序 指当前遇到的相应状态符号配对时编译程序应做的工作。 状态改变 指出在做完相应的编译工作后其状态栈如何改变。 综上所述,状态矩阵法的编译过程是按照存放在内存中的状态表不断地进行解释执行的。 6.3 词法分析6.3.1 词法分析的任务词法分析是编译过程各阶段的基础和 必要的准备。 词法分析的主要任务是从源程序语句 中识别出具有独立意义的语法单位(即语 法符号),并且建立一个符号表,用以保 存各语法符号的属性。 表6.4中的符号最后都变成二进制 形式的代码串。 可以将这些通用符号建立一个通 用符号表,这些符号的代码可用较大 的编号来表示,如表6.5所示。在这种情况下,上述赋值语句经 词法分析后可以得到一张符号表如表 6.6所示 。6.3.2 读字符程序读字符程序的任务
《《软件技术基础教程》(徐士良版)全套PPT电子课件教案-第6章 编译技术》由会员aa****6分享,可在线阅读,更多相关《《软件技术基础教程》(徐士良版)全套PPT电子课件教案-第6章 编译技术》请在金锄头文库上搜索。
罗兰贝格世界一流的通信企业管理方式(ppt50页)课件
小学校本课程《社会礼仪》4
小学六年级品德与社会下册《地球的伤心事——寻找受伤的原因》课件
冀教版二年级品德与生活下第五课诚实孩子人人夸
京改版化学九年级上册522物质的组成表示化学式课件_(共15张ppt)
二下语文快乐宫课件
(人教新课标)二年级语文上册课件称赞_5
工笔画技法19张ppt培训课件
学会自我保护ppt培训课件
党建工作ppt模板下载_1
脚印课件之二北京版一年级语文上册课件
人教二年级下册语文园地一会写生字笔顺演示_1ppt培训课件
一级建造师建筑工程管理与实务考试精讲ppt课件
沙排酷哥-体育主题 ppt模板ppt培训课件
内压容器设计ppt课件
小水萝卜橙色背景-食品主题 模板ppt培训课件
连续时间系统的时域分析ppt培训课件
烧伤临床解析
小学二年级美术下册《头饰设计》课件 (2)
病毒性疾病标本采集、保存与检测
2024-02-20 37页
2024-02-20 62页
2024-02-10 31页
2024-02-02 50页
2024-02-02 16页
2024-02-02 21页
2024-02-02 23页
2024-02-02 26页
2024-02-02 26页
2024-02-02 25页