电子文章 | 电子资料下载 | 家电维修 | 维修资料下载 | 加入收藏 | 全站地图
您现在所在位置:电子爱好者电子文章嵌入式系统计算机语言概述

计算机语言概述

11-20 17:14:34 | http://www.5idzw.com | 嵌入式系统 | 人气:384
标签:嵌入式系统开发,嵌入式开发,http://www.5idzw.com 计算机语言概述,http://www.5idzw.com

计算机语言概述

在计算机技术发展过程中,出现过各种各样的程序设计语言。从程序设计语言发展过程来看,可分为机器语言、汇编程序设计语言、高级程序设计语言(如Basic、Fortran、Pascal、C、C++、Prolog、Java、C#等)、数据库管理语言(SQL)、网络数据交换语言(XML)等。高级程序设计语言分为面向过程的语言和面向对象的语言。面向过程的语言适合描述问题解决的过程:复杂问题分解成相对简单的问题,从上而下或从下而上分析构建系统。面向对象的语言使用面向对象分析、设计同样的概念(类、对象、消息)具有独到的优点。

机器语言与汇编语言

仅由硬件组成的计算机只能接受由“0”和“1”组成的二进制信息。要计算机执行一定的操作,就要编写一系列的二进制代码。这种不需翻译即由计算机直接执行的指令叫做机器指令。这些指令的集合叫做机器语言。每一条机器指令都是一个二进制代码,因此,要记住每一指令及其含义是十分困难的,编写出来的程序难以阅读,而且由于它完全依赖于硬件系统,不同的机器有不同的指令系统,因此,它不具有兼容性。一台机器上编制的程序在另一台机器上根本无法运行,一个问题要在多个机器上求解,就必须重复地编写多个应用程序。这种程序直观性差,难以编写、调试、修改、移植和维护,由于这一问题的存在,人们期待用更接近于自然语言与数学语言的语言代替机器语言,汇编语言应运而生。

汇编语言是一种面向机器的程序设计语言,它用符号表示机器指令,例如用ADD代替机器语言中的加法运算。这种语言编写的程序不能直接运行,要经过汇编程序翻译成机器语言才能运行,一般来说汇编语言指令与机器语言指令之间是一一对应的。由于汇编语言一般都是为特定计算机或计算机系统设计的,因此,它虽然比机器语言好学、便于记忆,比用机器码编写程序省事了一点,但语言仍然没有解决对硬件的依赖关系。 <Script language=JavaScript> <-- menuwrite(); window.onscroll=respos; respos(); --> </Script>

高级程序设计语言

40多年以来,计算机高级程序设计语言与计算机硬件、计算机应用、计算机网络相依存,一同得到了空前的发展。历史上、甚至当今仍然比较流行的高级语言有以下数种。

1. FORTRAN语言

FORTRAN语言是世界上最早出现的高级高级语言,它所支持的数据类型比较丰富,特别适合于科学和工程中的数值计算。

一个FORTRAN程序由一个主程序与若干个子程序组成。主程序与每一个子程序都是一个独立的程序单位,称为一个程序模块。在FORTRAN语言中,子程序是实现模块化的有效途径。

2. ALGOL语言

ALGOL语言是另一个早期研制出来的高级语言。它有严格的文法规则。ALGOL是一个分程序结构的语言。分程序的结构可以是嵌套的,也就是说,分程序内可以含有别的分程序。过程也可以看成是一个分程序,这个分程序可以在别的分程序中被调用。

3. COBOL语言

COBOL语言是专门为处理商业事务而设计的一种通用语言,使用于商业和管理领域。特点是针对商务和管理过程中要处理大量记录形式的数据的特殊需要,侧重于数据项的输入、输出记录的处理。

COBOL语言把数据描述引入语言,数据描述与具体计算机无关,这一点后来又对数据库管理系统的发展产生重大影响。至今仍在商务处理领域得到一定的应用。

4.Pascal语言

Pascal语言是最早出现的结构化程序设计语言,在Pascal语言中分程序和过程这两个概念合二为一,统一为过程,Pascal过程可以嵌套和递归。用它编写出来的程序结构性好,程序易读。这种语言广泛用于一些计算机课程的教学,也用于科学计算。

5.C语言

C语言是20世纪70年代发展起来的一种通用的结构化程序设计语言,特别是在系统软件开发上应用很广,它具有高级语言的诸多特点,也具有汇编语言控制硬件的能力,还可以比较方便地定义其他语言编写的程序。

字符、整数和浮点数是C语言的基本数据对象,用户可以构造指针、数组、和联合等复杂的数据类型。C语言是一种较低级的语言,它提供了指针和地址操作的能力。C语言提供书写结构良好的程序所需的控制结构。C语言与UNIX操作系统紧密相关,UNIX操作系统及其上的许多软件都是用C语言编写程序的。

上述语言主要擅长描述计算机问题的解决过程,所以叫它们是面向过程的语言,也称为第3代语言(3GL)。

6.面向对象程序语言C++

C++语言是在C语言的基础上发展起来的,与C语言兼容,但大大扩充改善了C语言的性能。在C++语言中,最主要的是增加了类功能,使它成为面向对象的程序设计语言。一般认为,面向对象程序语言至少包含下面一些概念:

(1)对象  对象是世界上客观存在的事物,它具有特征和方法两方面属性。对象是相互关联的,通过这种关联来相互影响(改变对象的属性)。面向对象语言把对象属性和方法封装在一起,对象内部才能对对象的“私有数据”进行操作,对象外部只能按提供的公开的方法,才能查询和修改对象的属性。这样,对象属性的具体表示和方法的具体实现都是隐蔽的。

(2)类  类是对象共同特征和行为的描述。对象是类的实例。

(3)继承  对象有自己的属性,但是对象更有共性,共性存在于特性之中。继承反映了上述对象共性与自己的属性的关系。子类继承父类的意思是子类具有父类的属性和行为。子类又可以对父类的特征和行为重定义或部分修改达到代码重用的目的。

(4)消息  一个对象利用自己或其他对象的方法改变自己或其他对象的属性,这些方法的引用叫对象间消息的交互。

7.纯面向对象的程序设计语言Java

Java是一种跨平台的、适合于分布式计算机环境的面向对象的编程语言。它具有可移植、稳定、简单、高性能、动态执行等特性。

(1)Java语言完全面向对象  C++等面向对象的程序设计语言是由原来面向过程的语言改造而来。

(2)移植性  程序的可移植性指的是程序不经修改而在不同硬件或软件平台上运行的特性。而Java是纯面向对象的程序设计语言。

(3)稳定性  Java不支持指针数据类型,它提供了字节码的检查机制,Java还提供了自动的“内存垃圾”收集功能,这些机制大大提高了Java的稳定性和安全性。

(4)简单性  Java的避免了使用C++等语言的操作符重载、多继承和数据类型自动转换等,这些都有利于语言简单化。

(5)高性能  Java通过支持多线程、高效的字节码来提高语言性能。

(6)动态特性  Java的动态特性是其面向对象设计的延伸。这种特性使得Java程序能够适应不断变化的执行环境。Java通过“滞后联编”,支持类库升级之后,相应的应用程序不必重新编译,也一样可以利用升级后类库的新增功能。Java的动态特性还体现在其对动态数据类型和动态协议的支持上。利用一种特殊的Applet,编程人员可很方便地支持新的数据类型。Java的动态性的价值是使程序员真正拥有“即插即用”(Plug-and-Play)的软件模块功能。

[1] [2] [3]  下一页

,计算机语言概述
关于《计算机语言概述》的更多文章