第四节程序单元二 1程序单元程序执行过程中的独立调用单 元。如子程序分程序过程等。 2单元表示 编译时,一个单元的源程序 运行时,单元表示由一个代码段和一个 活动记录组成,称为单元实例。 3活动记录执行单元所需要的信息八以及该 单元的局部变量所绑定的数据对象的存 储区
1.程序单元:程序执行过程中的独立调用单 元。如子程序,分程序,过程等。 2.单元表示 编译时,一个单元的源程序。 运行时,单元表示由一个代码段和一个 活动记录组成,称为单元实例。 3.活动记录:执行单元所需要的信息,以及该 单元的局部变量所绑定的数据对象的存 储区。 第四节 程序单元
代码存储器(C) 数据存储器(D)
ip 代码存储器(C) 数据存储器(D)
4非局部变量:一个程序单元可以引用 未被本单元说明而被其它单元说明 的变量 5引用环境局部变量+非局部变量。 6别名同一单元的引用环境中有两个 变量绑定于同一数据对象,称这些 变量具有别名
4.非局部变量:一个程序单元可以引用 未被本单元说明而被其它单元说明 的变量。 5.引用环境:局部变量+非局部变量。 6.别名:同一单元的引用环境中有两个 变量绑定于同一数据对象,称这些 变量具有别名
7副作用的产生对绑定于一个非局部 变量的对象进行修改 8程序单元可以递归激活从而一个单 元可以有很多个实例但代码段相同。 不同的仅仅是活动记录 9静态分配和动态分配 Fortran pascal或C
7.副作用的产生:对绑定于一个非局部 变量的对象进行修改。 8.程序单元可以递归激活,从而一个单 元可以有很多个实例,但代码段相同。 不同的仅仅是活动记录。 9.静态分配和动态分配 Fortran Pascal 或C
第五节程序设计语言发展简介 随着计算机技术的发展计算机应用也日 益广泛已经渗透到社会的各个领域对程 序设计语言也提出了新的要求(诸如可维 护性,可靠性可移植性等),从而促进了语 言的发展
随着计算机技术的发展,计算机应用也日 益广泛,已经渗透到社会的各个领域,对程 序设计语言也提出了新的要求(诸如可维 护性,可靠性,可移植性等),从而促进了语 言的发展。 第五节 程序设计语言发展简介
.早期的高级语言(50年代) 追求效率 1. FORTRAN FORmula translation 主要用于科学计算 子程序独立编译 COMMON语句实现了模块之间的通 信
一 . 早期的高级语言(50年代) —追求效率 1. FORTRAN FORmula TRANslation .主要用于科学计算 .子程序独立编译 .COMMON语句实现了模块之间的通 信
2. ALGOL 60 ALGOrithmic Language 60 主要用于科学计算 引入了分程序结构和递归过程 采用BNF形式描述语法
2. ALGOL 60 ALGOrithmic Language 60 .主要用于科学计算 .引入了分程序结构和递归过程 .采用BNF形式描述语法
3. COBO COmmon Business Oriented Language 广泛应用于各种事务处理领域 引入了文件和数据描述 类自然语言程序描述
3. COBOL COmmon Business Oriented Language .广泛应用于各种事务处理领域 .引入了文件和数据描述 .类自然语言程序描述
二早期的突破 60年代初,不再盲目地追求效率出现了 基于良好刻画数学原则的语言。 1. LISP 具有很强的符号处理能力 统一的数据结构 数据和程序统一的表示方法 其基础是函数和函数作用
二.早期的突破 60年代初,不再盲目地追求效率,出现了 基于良好刻画数学原则的语言。 1. LISP .具有很强的符号处理能力 .统一的数据结构 .数据和程序统一的表示方法 .其基础是函数和函数作用
2. APL 支持函数式程序设计风格 广泛应用于涉及大量矩阵运算的科学 计算中 具有丰富的操作符
2. APL .支持函数式程序设计风格 .广泛应用于涉及大量矩阵运算的科学 计算中 .具有丰富的操作符