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

《编译原理》课程教学资源(PPT课件讲稿)第五章 类型检查

资源类别:文库,文档格式:PPT,文档页数:130,文件大小:1.03MB,团购合买
5.1 类型在编程语言中的作用 5.2 描述类型系统的语言 5.3 简单类型检查器的说明 5.4 多态函数 5.5 类型表达式的等价 5.6 函数和算符的重载
点击下载完整版文档(PPT)

第五章类型检查 记号语法 中间 语法类型语法代码厂表示 中间 流分析树检查 器 器 树 生成 器 本章内容 静态检查中最典型的部分一类型检查: 类型系统、类型检查、多态函数、重载 忽略其它的静态检査:控制流检查、唯一性检查、 关联名字检查

第五章 类 型 检 查 本章内容 – 静态检查中最典型的部分 — 类型检查: 类型系统、类型检查、多态函数、重载 – 忽略其它的静态检查:控制流检查、唯一性检查、 关联名字检查 语法 分析 器 类型 检查 器 中间 代码 生成 器 语 法 树 语 法 树 中间 表示 记号 流

5.1类型在编程语言中的作用 511执行错误和安全语言 介绍一些和程序运行有联系的概念

5.1 类型在编程语言中的作用 5.1.1 执行错误和安全语言 介绍一些和程序运行有联系的概念

5.1类型在编程语言中的作用 511执行错误和安全语言 1、程序运行时的执行错误分成两类 会被捕获的错误( trapped error)

5.1 类型在编程语言中的作用 5.1.1 执行错误和安全语言 1、程序运行时的执行错误分成两类 • 会被捕获的错误(trapped error)

5.1类型在编程语言中的作用 511执行错误和安全语言 1、程序运行时的执行错误分成两类 会被捕获的错误( trapped error) 例:非法指令错误

5.1 类型在编程语言中的作用 5.1.1 执行错误和安全语言 1、程序运行时的执行错误分成两类 • 会被捕获的错误(trapped error) – 例:非法指令错误

5.1类型在编程语言中的作用 511执行错误和安全语言 1、程序运行时的执行错误分成两类 会被捕获的错误( trappederror) 例:非法指令错误、非法内存访问

5.1 类型在编程语言中的作用 5.1.1 执行错误和安全语言 1、程序运行时的执行错误分成两类 • 会被捕获的错误(trapped error) – 例:非法指令错误、非法内存访问

5.1类型在编程语言中的作用 511执行错误和安全语言 1、程序运行时的执行错误分成两类 会被捕获的错误( trappederror) 例:非法指令错误、非法内存访问、除数为零 引起计算立即停止 不会被捕获的错误( untrapped error) 例:下标变量的访问越过了数组的末端 例:跳到一个错误的地址,该地址开始的内存正 好代表一个指令序列 错误可能会有一段时间未引起注意

5.1 类型在编程语言中的作用 5.1.1 执行错误和安全语言 1、程序运行时的执行错误分成两类 • 会被捕获的错误(trapped error) – 例:非法指令错误、非法内存访问、除数为零 – 引起计算立即停止 • 不会被捕获的错误(untrapped error) – 例:下标变量的访问越过了数组的末端 – 例:跳到一个错误的地址,该地址开始的内存正 好代表一个指令序列 – 错误可能会有一段时间未引起注意

5.1类型在编程语言中的作用 511执行错误和安全语言 2、良行为的程序 不同场合对良行为的定义略有区别 例如,没有任何不会被捕获错误的程序 3、安全语言 任何合法程序都是良行为的 通常是设计一个类型系统,通过静态的类型检查 来拒绝不会被捕获错误 但是,设计一个类型系统,它正好只拒绝不会被 捕获错误是非常困难的

5.1 类型在编程语言中的作用 5.1.1 执行错误和安全语言 2、良行为的程序 – 不同场合对良行为的定义略有区别 – 例如,没有任何不会被捕获错误的程序 3、安全语言 – 任何合法程序都是良行为的 – 通常是设计一个类型系统,通过静态的类型检查 来拒绝不会被捕获错误 – 但是,设计一个类型系统,它正好只拒绝不会被 捕获错误是非常困难的

5.1类型在编程语言中的作用 511执行错误和安全语言 禁止错误( forbidden error) 不会被捕获错误集合+会被捕获错误的一个子集 为语言设计类型系统的目标是在排除禁止错误 良行为程序和安全语言也可基于禁止错误 来定义

5.1 类型在编程语言中的作用 5.1.1 执行错误和安全语言 • 禁止错误(forbidden error) – 不会被捕获错误集合 + 会被捕获错误的一个子集 – 为语言设计类型系统的目标是在排除禁止错误 良行为程序和安全语言也可基于禁止错误 来定义

5.1类型在编程语言中的作用 512类型化语言和类型系统 4、类型化的语言 变量的类型 变量在程序执行期间的取值范围

5.1 类型在编程语言中的作用 5.1.2 类型化语言和类型系统 4、类型化的语言 • 变量的类型 – 变量在程序执行期间的取值范围

5.1类型在编程语言中的作用 512类型化语言和类型系统 4、类型化的语言 变量的类型 类型化的语言 变量都被给定类型的语言 表达式、语句等程序构造的类型都可以静态确定 例如,类型b0lemn的变量x在程序每次运行时的值只能是 布尔值,mot(x)总有意义

5.1 类型在编程语言中的作用 5.1.2 类型化语言和类型系统 4、类型化的语言 • 变量的类型 • 类型化的语言 – 变量都被给定类型的语言 – 表达式、语句等程序构造的类型都可以静态确定 – 例如,类型boolean的变量x在程序每次运行时的值只能是 布尔值,not (x)总有意义

点击下载完整版文档(PPT)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
共130页,可试读30页,点击继续阅读 ↓↓
相关文档

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

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