过程式程序设计语言.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 过程式程序设计语言 基本观点: 计算实现的模型如果按冯·诺依曼原理强制改变内存中的值叫命令 (或译指 令、强制Imperative式)的。由于强制改变值,程序状态的变化没有一定规 则,程序大了就很难查错,很难调试,不易证明其正确。 组织程序的范型即:算法过程+数据结构(计算控制+计算对象) 3.1 计算对象表示—值与类型 3.2 计算对象实现—存储 3.3 计算对象连接—束定 3.4 计算组织程序控制 3.5 计算组织函数与过程 3.6 计算组织抽象与封装 3.1 计算对象-值与类型 类型是计算机可能实现的结构和约定对客观世界差异的刻划。 同一类型的外延,即同一结构表示所有可能的值构成一个域。 分类原则:同样表示结构,同样语义解释,同样的操作。 同类型值运算结果:同类型。 无符号整数: 二进制解释的值 整数:符号 值 0 0 0 0 1 0 1 0 1 0 1 1 1 0 1 0 0 0 1 0 1 0 1 0 0 0 0 1 1 1 0 1 1 1 浮点数: 符号 阶码 尾数 程序语言中:基元(primitive)类型:整型/实 (定,浮)/字符/真值/枚举 结构(structured )类型:元组/数组/记录(结构)/表/ 串 3.1.1 字面量、变量、常量 • 名字操纵值, 名: 字面量 从名字即知类型 字面值不变 变量 符号名要声明类型 值可变 常量 符号名要声明类型 值不变 • 基元值的名字是地址的别名, 地址值在计算机中不恒定 • 操纵地址的名字是指针(地址变量) float *p, x = 37.32; p=x; (p)203C (x)117F 117F 37.32 续 •名值可分导致 x = x + 1; 按名 按名取值: 引用reference 存—值 左值 右值 别名:多个变量可以具有同一个地址。当用多个变量名 来访问单个存储地址时,这些变量名就称为别名。 (违反无二义原则吗?) int Rint = Svar Rint 是引用类型的变量,即左值变量必须给一右值,因 而成Svar别名 y = x ++ ; x 既是右值也是左值 程序中的求值方式 • 表达式中求值靠运算符 • 函数、过程引用改变值 函数得到函数值,过程改变环境中值(也是 改变状态)。 函数和过程是操作集合的概括, 函数是从原始值到函数值的 映射, 是一种事物的度量到另一种事物度量的联系。 运算符是特殊的函数 单目运算: E 等价表示为 (E) 双目运算: E 1E2 等价表示为 (E 1,E2) 有没有多目运算 3.1.2 值是头等程序对象 程序语言中的值 • 字面量(整、实、布尔、字符、枚举、串) • 复合量(记录、数组、元组、结构、表、联合、集合、文件) • 指针值 • 变量引用(左值、右值) • 函数和过程抽象,数学对象参与运算的权利是一样的,值是 计算对象也要按一致性原则: – 可出现在表达式中并求值 – 可作函数返回值 – 可单独存储 – 可以构成复杂的数据结构 – 可作函数参数 基本类型 基本类型:按操作行为划分的值的集合 集合中元素个数叫基数 #S OP1:T T OP2:T × T T 复合类型

文档评论(0)

xiaozu + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档