2012年软考系统分析师经典教程:程序语言

来源:软件水平考试    发布时间:2012-11-04    软件水平考试视频    评论

2、程序语言知识

2.1 程序语言

  程序语言分为低级语言和高级语言两个大类。

  低级语言:又称为面向机器语言,它是特定的计算机系统所固有的语言。

  ◆ 机器语言:虽然执行效率高,但编写出来的程序可读性很差,程序难以修改和维护。

  ◆ 汇编语言:汇编语言是机器语言的一种提升,它使用了一些助记符号来表示机器指令中的操作码和操作数。但它仍然是一种和计算机的机器语言十分接近的语言,使用起来仍然不太方便。

  ◆ 高级语言:与人们的自然语言比较接近,使用起来很方便,也极大的提高了程序设计的效率。

  下面简单介绍了几种高级语言的特点:

  Fortran:第一个被广泛用于进行科学计算的高级语言。

  Algol: 早期研制出来的高级语言。有严格的文法规则,用巴科斯范BNF来描述语言的文法,是一个分程序结构的语言。(最近嵌套原则和存储器使用效率高)

  Cobol:面向事务处理的高级语言。在数据库管理系统设计方面使用广泛。

  Pascal:具有相当强的表达能力,特别是对于数据结构功能的表达极具优势。

  C    :当今最通用的程序设计语言。C是一种较低级的语言,提供了指针和地址操作的能力,但正是因为它的这一特点,才使它更具灵活性。C与UNIX操作系统紧密相关。

  Prolog:逻辑型语言的代表。它是建立在关系理论和一阶谓词逻辑理论基础上的。Prolog程序由一些俗称事实和规则的Horn子句组成,具有很强的推理功能,适用书写自动定理证明、专家系统、自然语言理解等问题的程序。

  LISP:典型的函数型程序语言。它以λ演算为基础。它广泛的用于问题求解等人工智能领域。

  面向对象技术具有3个最重要的特征:封装性、继承性和多态性。

  ◆ 封装性:指隐藏类对象内部实现的复杂细节,将类以变量类型的形式提供给用户,从而有效地保护内部所有数据不受外部破坏。

  ◆ 继承性:指一个类(父类)再加上某些新的特征生成另外一个新类(子类),子类具有父类的全部特征,从而增强了类的共享机制,实现了软件的可重用性,简化了软件的开发工作。

  ◆ 多态性:指将同一处理过程或函数应用于不同的变量(参数),实现数据和过程的功能重载,从而简化编码。

  下面简单介绍一下几种面向对象语言。

  C++:是在C语言的基础上发展起来与C兼容的语言。是目前最流行的面向对象语言,主要增加了类功能和从其他类中继承类对象的功能。

  Smalltalk:典型的面向对象的程序设计语言,引入了类和对象。

  Java:  由SUN公司开发的一种面向对象的程序设计语言。其主要特点是可移植性好,可用于各种平台,尤其适合网络上运行。

  数据类型和控制结构:

  对于不同的程序语言,其提供的数据类型都不相同。数据是程序操作的对象,使用时都需要分配内存空间,它们都具有以下的属性。

  数据名称:由用户通过标示符命名;

  类型:    说明数据占用内存的大小和存放方式;

  存储类:  说明数据在内存中的位置和生存期;

  作用域:  说明数据可以使用的范围;

  生存期:  说明数据占用内存的时间。

  数据从不同角度可分成不同的类别:

  纯量数据类型(基础数据类型)和结构数据类型:其中纯量数据类型包括(实型、整型、布尔型、指针,双精度型和枚举型);而结构数据类型包括(联合、数组、复型和记录)。

  按作用域分:全局量和局部量。

  按生存期分:自动生存期(auto)、静态生存期(static)和动态生存期。

  按程序运行期数据值是否改变:常量和变量。

  按类型分:void、标量、函数和聚合。

  ◇ 标量又可分为算术、枚举和指针;

  ◇ 聚合可分为数组、结构体和共用体。

  按构造方式分:基本类型和派生类型(主要参考C语言)。

  基本类型是void、char、int、float、double和枚举类型,以及其变种short、long、signed和unsigned。

  派生类型包括指针、数组、函数、结构体(struct)和共用体(union)。其中,最后两种为用户类型。

  程序语言中的控制结构为数据和数据上的运算组合成程序提供了基本框架,主要包括3种控制结构,即

  ◇ 顺序:

  ◇ 选择:if语句

  ◇ 重复:while语句

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答