当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

吉林大学:《编译原理》课程教学资源(PPT课件讲稿)语义分析

资源类别:文库,文档格式:PPT,文档页数:14,文件大小:147.5KB,团购合买
一、语义分析概述(必要性、功能、描述方法) 二、符号表 三、类型表达式 四、声明和程序体的语义分析
点击下载完整版文档(PPT)

语义分析 主要内容 语义分析概述(必要性、功能、描述方法) 句符号表 句类型表达式 声明和程序体的语义分析

语义分析 主要内容:  语义分析概述(必要性、功能、描述方法)  符号表  类型表达式  声明和程序体的语义分析

语义分析的必要性 语法和语义的区别; 语法:关于什么样的字符串才是该语言 在组成结构上合法的程序的法规。 语义:关于结构上合法的程序的意义的 法则

语义分析的必要性 语法和语义的区别; 语法:关于什么样的字符串才是该语言 在组成结构上合法的程序的法规。 语义:关于结构上合法的程序的意义的 法则

语义分析的功能 语义种类 静态语义:在编译阶段(从程序文本上)可 以检查的语义。 动态语义:通过程序的执行才能检查的语 义

语义分析的功能  语义种类 静态语义:在编译阶段(从程序文本上)可 以检查的语义。 动态语义:通过程序的执行才能检查的语 义

语义的描述 语义形式化方法: 1.操作语义 2.指称语义 3.公理语义 4.代数语义

 语义的描述 语义形式化方法: 1. 操作语义 2. 指称语义 3. 公理语义 4. 代数语义

语义分析的内容: 类型分析; 标识符相关信息; 语义分析的功能: 检查语义错误 构造标识符属性表(符号表) 语义分析的实现: 与语法分析相结合

 语义分析的内容: 类型分析; 标识符相关信息;  语义分析的功能: 检查语义错误 构造标识符属性表(符号表)  语义分析的实现: 与语法分析相结合

语义分析的功能图示 语法分析树义分析 符号表 TokenLi st 语义定义 判定 自然语言描述规定

语义分析的功能图示 语义分析 语法分析树 TokenList 语义定义 自然语言描述规定 符号表 判定

三种内部表示 标识符的内部表示 类型的内部表示 ÷值的内部表示

 标识符的内部表示  类型的内部表示  值的内部表示 三种内部表示

标识符的内部表示 C标识符种类: 常量名、类型名、变量名、函数名、过程名、域名。 TYPE idkind=( consKind, typeKind, varKind fieldKind, prockind, funckind) C内部表示( Attributer): 常量:Toer| Kind Va al ue 类型: Typeptr|Kind Forward 变量: TypePtr|Kind| Access Level0f 域名:[ TypePtr Kind0| HostType 过函: Off TypePtr Kind Level Class Code Size Forward

Code 标识符的内部表示  标识符种类: 常量名、类型名、变量名、函数名、过程名、域名。 TYPE idkind=( consKind, typeKind, varKind, fieldKind, procKind,funcKind )  内部表示(AttributeIR): 常量: 类型: 变量: 域名*: 过函: TypePtr Kind Value TypePtr Kind Forward TypePtr Kind Access Level Off TypePtr Kind Off HostType Size Forward TypePtr Kind Level Parm Class Off

2例有声明如下: CONST pai= 3. 14 TYPE vector=ARRAY [1.. 10] OF integer VAR x, y real r.s. vector 设当前层数和可用 offset值分别为L和0, 构造标识符pai, vector,x,y,r和s 的属性表示

 例有声明如下: CONST pai= 3.14 ; TYPE vector=ARRAY[1..10] OF integer; VAR x, y : real ; r, s : vector ; 设当前层数和可用offset值分别为L和0, 构造标识符 pai, vector, x, y, r 和s 的属性表示

÷类型的内部表示 类型的种类:标准、子界、枚举、数组、记录、 集合、文件、指针类型等等。 TypeKind=(intTy, bootY, charT, realTy, enumTy subTys arrayTy, recordTy, setTy, file'Ty, pointerTy 内部表示:( Type IR) 标准类型: Size kind sub. Si Ize Kind HostType Low Up enum Size Kind Elems Leng array:Size kind index Type ElemType

 类型的内部表示  类型的种类:标准、子界、枚举、数组、记录、 集合、文件、指针类型等等。 TypeKind=(intTy,boolTy,charTy,realTy,enumTy, subTy,arrayTy,recordTy,setTy,fileTy,pointerTy)  内部表示:(TypeIR) 标准类型: sub: enum: array: Size Kind HostType Low Up Size Kind Elems Leng Size Kind IndexType ElemType Size Kind

点击下载完整版文档(PPT)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
共14页,试读已结束,阅读完整版请下载
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有