JAVA 2019/7/9 第 1 页
计算机语言 计算机语言(Computer Language)指用于人与计算机之间通讯的语言。计算机语言是人与计算机之间传递信息的媒介。计算机系统最大特征是指令通过一种语言传达给机器。为了使电子计算机进行各种工作,就需要有一套用以编写计算机程序的数字、字符和语法规划,由这些字符和语法规则组成计算机各种指令(或各种语句)。这些就是计算机能接受的语言。 2019/7/9 第 2 页
分类 机器语言 汇编语言 高级语言 2019/7/9 第 3 页
电脑每做的一次动作,一个步骤,都是按照已经用计算机语言编好的程序来执行,程序是计算机要执行的指令的集合,而程序全部都是用我们所掌握的语言来编写的。所以人们要控制计算机一定要通过计算机语言向计算机发出命令。 (1)解释类:执行方式类似于我们日常生活中的“同声翻译”,应用程序源代码一边由相应语言的解释器“翻译”成目标代码(机器语言),一边执行,因此效率比较低,而且不能生成可独立执行的可执行文件,应用程序不能脱离其解释器,但这种方式比较灵活,可以动态地调整、修改应用程序。 (2)编译类:编译是指在应用源程序执行之前,就将程序源代码“翻译”成目标代码(机器语言),因此其目标程序可以脱离其语言环境独立执行,使用比较方便、效率较高。但应用程序一旦需要修改,必须先修改源代码,再重新编译生成新的目标文件(*.OBJ)才能执行,只有目标文件而没有源代码,修改很不方便。如今大多数的编程语言都是编译型的,例如VisualBasic、VisualC++、VisualFoxpro、Delphi等。 2019/7/9 第 4 页
机器语言 机器语言是指一台计算机全部的指令集合。 电子计算机所使用的是由"0"和"1"组成的二进制数,二进制是计算机的语言的基础。一句话,就是写出一串串由"0"和"1"组成的指令序列交由计算机执行,这种计算机能够认识的语言,就是机器语言。使用机器语言是十分痛苦的,特别是在程序有错需要修改时,更是如此。 2019/7/9 第 5 页
因此程序就是一个个的二进制文件。一条机器语言成为一条指令。指令是不可分割的最小功能单元。而且,由于每台计算机的指令系统往往各不相同,所以,在一台计算机上执行的程序,要想在另一台计算机上执行,必须另编程序,造成了重复工作。但由于使用的是针对特定型号计算机的语言,故而运算效率是所有语言中最高的。机器语言,是第一代计算机语言。 2019/7/9 第 6 页
汇编语言 为了减轻使用机器语言编程的痛苦,人们进行了一种有益的改进:用一些简洁的英文字母、符号串来替代一个特定的指令的二进制串,比如,用“ADD”代表加法,“MOV”代表数据传递等等,这样一来,人们很容易读懂并理解程序在干什么,纠错及维护都变得方便了,这种程序设计语言就称为汇编语言,即第二代计算机语言。然而计算机是不认识这些符号的,这就需要一个专门的程序,专门负责将这些符号翻译成二进制数的机器语言,这种翻译程序被称为汇编程序。 2019/7/9 第 7 页
汇编语言同样十分依赖于机器硬件,移植性不好,但效率仍十分高,针对计算机特定硬件而编制的汇编语言程序,能准确发挥计算机硬件的功能和特长,程序精炼而质量高,所以至今仍是一种常用而强有力的软件开发工具。 汇编语言的实质和机器语言是相同的,都是直接对硬件操作,只不过指令采用了英文缩写的标识符,更容易识别和记忆。它同样需要编程者将每一步具体的操作用命令的形式写出来。 2019/7/9 第 8 页
汇编程序的每一句指令只能对应实际操作过程中的一个很细微的动作,例如移动、自增,因此汇编源程序一般比较冗长、复杂、容易出错,而且使用汇编语言编程需要有更多的计算机专业知识,但汇编语言的优点也是显而易见的,用汇编语言所能完成的操作不是一般高级语言所能实现的,而且源程序经汇编生成的可执行文件不仅比较小,而且执行速度很快。 2019/7/9 第 9 页
高级语言 高级语言有:BASIC(True basic、Qbasic、Virtual Basic)、C、C++、PASCAL、FORTRAN、Java、智能化语言(LISP、Prolog、CLIPS、OpenCyc、Fazzy)、动态语言(Python、PHP、Ruby、Lua)等等。高级语言源程序可以用解释、编译两种方式执行。通常用后一种。 2019/7/9 第 10 页
高级语言是绝大多数编程者的选择。和汇编语言相比,它不但将许多相关的机器指令合成为单条指令并且去掉了与具体操作有关但与完成工作无关的细节,例如使用堆栈、寄存器等,这样就大大简化了程序中的指令。由于省略了很多细节,所以编程者也不需要具备太多的专业知识。高级语言主要是相对于汇编语言而言,它并不是特指某一种具体的语言,而是包括了很多编程语言,流行的VB、VC、FoxPro、Delphi等,这些语言的语法、命令格式都各不相同。 2019/7/9 第 11 页
编程思想 面向过程 面向对象 面向问题 2019/7/9 第 12 页
面向过程 “面向过程”(Procedure Oriented)是一种以过程为中心的编程思想。“面向过程”也可称之为“面向记录”编程思想,他们不支持丰富的“面向对象”特性(比如继承、多态),并且它们不允许混合持久化状态和域逻辑。 就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。 2019/7/9 第 13 页
面向对象 “面向对象”(Object Oriented,简称OO)是一种以事物为中心的编程思想。从现实世界中客观存在的事物(即对象)出发来构造软件系统,并在系统构造中尽可能地运用人类的自然思维方式。 2019/7/9 第 14 页
面向问题是一种全新的编程思想,建立在面向过程之上,可以简单的理解成高度集成的面向过程。 2019/7/9 第 15 页
算法 算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。 2019/7/9 第 16 页