程序是一系列的操作步骤,计算机程序就是由人事先规定的计算机完成某项工作的操作步骤,每一个步骤具体内容由计算机能够理解的指令来描述,这些指令告诉计算机“做什么”和“怎么做”

    通常分为三类:机器语言、汇编语言和高级语言。

1.机器语言

计算最早出现的语言就是机器语言,它是计算机能够直接识别的语言,而且速度快。机器语言用二进制代码来编写计算机程序的。因此又称二进制语言。例如用机器语言来表示“8+4”,是一串二进制码“00001000 00000100 00000100”。机器语言书写困难,记忆复杂,一般很难记忆。

2.汇编语言

由于机器语言的缺陷,人们开始用助记符编写程序,用一些符号代替机器指令所产生的语言称为汇编语言。但是,用汇编语言编写的程序不能被计算机所识别,必须使用某种特殊的软件用汇编语言写的源程序翻译和连接成能被计算机直接识别的二进制代码。

 汇编语言虽然采用了助记符来编写程序,比机器语言简单,但是汇编语言仍属于低级语言,它与计算机的体系结构有关。工作量大,繁琐,而且程序可移植性差。

3.高级语言

 计算机并不能直接接受和执行高级语言编写的源程序,源程序在输入计算机时,通过“翻译程序”翻译成机器语言形式的目标程序,计算机才能识别和执行。这种“翻译”通常有两种方式,即编译方式和解释方式。

  编译方式:编译方式的翻译工作由“编译程序”来完成,它是先将整个源程序都转换成二进制代码,生成目标程序,然后把目标程序连接成可执行的程序,以完成源程序要处理的运算并取得结果。

解释方式:  源程序进入计算机时,解释程序边扫描边解释,对源程序的语句解释一条,执行一条,不产生目标程序。解释方式的翻译工作由“解释程序”来完成。

编译性语言:C/C++、Pascal/Object Pascal

解释性语言:ASP、PHP、Java、JavaScript、VBScript、Prel、Python、Ruby、MATLAB

  使用编译性语言程序将整个源程序编译连接为可执行的文件,这种方式效率高、可靠性高、可移植性好。不过,当源程序修改后,必须重新编译。

  面向对象的语言借鉴了20世纪50年代的人工智能语言LISP,引入了动态绑定的概念和交互式开发环境的思想;始于20世纪60年代的离散事件模拟语言Simula67,引入了类的要领和继承,成形于20世纪70年代的Smalltalk

  面向对象语言的发展有两个方向:一种是纯面向对象语言,如Smalltalk、EIFFEL等;另一种是混合型面向对象语言,即在过程式语言和其他语言中加入类、继承等成分,如C++、Objective-C 等。

  面向对象的编程语言:Smalltalk、Java、C++、C#、Python。

  面向对象的三大特点:继承、封装、多态

  面向过程的编程语言:C


返回目录:NOIP/CSP信息学奥赛初赛