计算机语言的发展
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
现状
• 如今通用的编程语言有两种形式:汇编语言和高级语言。 • 汇编语言和机器语言实质是相同的,都是直接对硬件操作,只不过指令采用了英文缩写的 标识符,容易识别和记忆。源程序经汇编生成的可执行文件不仅比较小,而且执行速度很 快。 • 高级语言是绝大多数编程者的选择。和汇编语言相比,它不但将许多相关的机器指令合成 为单条指令,并且去掉了与具体操作有关但与完成工作无关的细节,例如使用堆栈、寄存 器等,这样就大大简化了程序中的指令。同时,由于省略了很多细节,编程者也就不需要 有太多的专业知识。 • 高级语言主要是相对于低级语言而言,它并不是特指某一种具体的语言,而是包括了很多 编程语言,如流行的vb、vc、foxpro、delphi等,这些语言的语法、命令格式都各不相同。 • 高级语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行,按转换方式可 将它们分为两类:解释类和编译类
Java
Java是由Sun最初设计用于嵌入程序的可移植性“小C++”。 在网页上运行小程序的想法着实吸引了不少人的目光,于是,这门 语言迅速崛起。事实证明,Java不仅仅适于在网页上内嵌动画— 它是一门极好的完全的软件编程的小语言。“虚拟机”机制、垃圾 回收以及没有指针等使它很容易实现不易崩溃且不会泄漏资源的可 靠程序。虽然不是C++的正式续篇,Java从C++中借用了大量的语 法。它丢弃了很多C++的复杂功能,从而形成一门紧凑而易学的语 言。不像C++,Java强制面向对象编程,要在Java里写非面向对 象的程序就像要在Pascal里写“空心粉式代码”一样困难。
高级语言
高级语言(High-level programming language)相对 于机器语言(machine language,是一种 指令集的体系。 这种指令集,称 机器码(machine code),是电脑的 CPU可直接解读的数据)而言。是高度封装了的 编程语言, 与低级语言相对。它是以人类的日常语言为基础的一种编 程语言,使用一般人易于接受的文字来表示(例如汉字、 不规则英文或其他外语),从而使程序编写员编写更容易, 亦有较高的可读性,以方便对电脑认知较浅的人亦可以大 概明白其内容。
THANK YOU
计算机语言的发展
3
趋势
。
现状 前期
3
前期
• 二十世纪四十年代当计算机刚刚问世的时候,程序员必须手动控制计算机。当时的计算机十分昂贵,唯一想到利用程序设计语言
来解决问题的人是德国工程师楚泽(konradzuse)。不久后,计算机的价格大幅度下跌,而计算机程序也越来越复杂。也就是说, 开发时间已经远比运行时间来得宝贵。于是,新的集成、可视的开发环境越来越流行。它们减少了所付出的时间、金钱(以及脑 细胞)。只要轻敲几个键,一整段代码就可以使用了。这也得益于可以重用的程序代码库。随着c,pascal,fortran,等结构化高级 语言的诞生,使程序员可以离开机器层次,在更抽象的层次上表达意图。由此诞生的三种重要控制结构,以及一些基本数据类型
趋势
• 面向对象程序设计以及数据抽象在现代程序设计思想中占有很重要的地位,未来语言的发展将 不在是一种单纯的语言标准,将会以一种完全面向对象,更易表达现实世界,更易为人编写, 其使用
• 将不再只是专业的编程人员,人们完全可以用订制真实生活中一项工作流程的简单方式来完成 编程。
• 简单性:提供最基本的方法来完成指定的任务,只需理解一些基本的概念,就可以用它编写出 适合于各种情况的应用程序。 • 面向对象:提供简单的类机制以及动态的接口模型。对象中封装状态变量以及相应的方法,实 现了模块化和信息隐藏;提供了一类对象的原型,并且通过继承机制,子类可以使用父类所提 供的方法,实现了代码的复用。 • 安全性:用于网络、分布环境下有安全机制保证。 • 平台无关性:与平台无关的特性使程序可以方便地被移植到网络上的不同机器、不同平台
11
01
02
03
04
05
C语言
C++
Java
Pascal
计算机语言中常用语言
11
C语言
C语言是Dennis Ritchie在七十年代创建的,它功 能更强大且与ALGOL保持更连续的继承性,而ALGOL则 是COBOL和FORTRAN的结构化继承者。C语言被设计成 一个比它的前辈更精巧、更简单的版本,它适于编写 系统级的程序,比如操作系统。在此之前,操作系统 是使用汇编语言编写的,而且不可移植。C语言是第 一个使得系统级代码移植成为可能的编程语言。
Pascal
Pascal语言是由NicolasWirth在七十年代早期设计的,因为他对FORTRAN和 COBOL没有强制训练学生的结构化编程感到很失望,“空心粉式代码”变成了规范, 而当时的语言又不反对它。Pascal被设计来强行使用结构化编程。最初的Pascal被 严格设计成教学之用,最终,大量的拥护者促使它闯入了商业编程中。当Borland发 布IBMPC上的TurboPascal时,Pascal辉煌一时。集成的编辑器,闪电般的编译器加 上低廉的价格使之变得不可抵抗,Pascal编程了为MS-DOS编写小程序的首选语言。 然而时日不久,C编译器变得更快,并具有优秀的内置编辑器和调试器。Pascal在 1990年Windows开始流行时走到了尽头,Borland放弃了Pascal而把目光转向了为 Windows编写程序的C++。TurboPascal很快被人遗忘。
7
01Hale Waihona Puke Baidu
机器语言 汇编语言 高级语言
分
类
02 03
机器语言
指令系统是计算机硬件的语言系统,也叫机器 语言,它是软件和硬件的主要界面,从系统结构的 角度看,它是系统程序员看到的计算机的主要属性。 因此指令系统表征了计算机的基本功能同时也决定 了机器所能被要求的能力,也决定了指令的格式和 机器的结构。对不同的计算机在设计指令系统时, 应对指令格式、类型及操作功能给予应有的重视。
C++
C++语言是具有面向对象特性的C语言的继 承者。面向对象编程,或称OOP是结构化编程 的下一步。OO程序由对象组成,其中的对象 是数据和函数离散集合。有许多可用的对象库 存在,这使得编程简单得只需要将一些程序 “建筑材料”堆在一起(至少理论上是这样)。 比如说,有很多的GUI和数据库的库实现为对 象的集合。
都能够很好的开始让程序员以接近问题本质的方式去思考和描述问题。随着程序规模的不断扩大,在60年代末期出现了软件危机,
在当时的程序设计模型中都无法克服错误随着代码的扩大而级数般的扩大,以至到了无法控制的地步,这个时候就出现了一种新 的思考程序设计方式和程序设计模型-----面向对象程序设计,由此也诞生了一批支持此技术的程序设计语言,比如eiffel,c++, java,这些语言都以新的观点去看待问题,即问题就是由各种不同属性的对象以及对象之间的消息传递构成。面向对象语言由此 必须支持新的程序设计技术,例如:数据隐藏,数据抽象,用户定义类型,继承,多态等等。
计算机语言的发展
制作人:唐瑞祥
计算机语言(Computer Language)指用于人与计 算机之间通讯的语言。计算机语言是人与计算机之 间传递信息的媒介。计算机系统最大特征是指令通 过一种语言传达给机器。为了使电子计算机进行各 种工作,就需要有一套用以编写计算机程序的数字、 字符和语法规划,由这些字符和语法规则组成计算 机各种指令(或各种语句)。这些就是计算机能接 受的语言。
汇编语言
汇编语言(AssemblyLanguage)是面向机器的程序设 计语言。在汇编语合中,用助记符(Memoni)代替操作码, 用地址符号(Symbol)或标号(Label)代替地址码。这样用符 号代替机器语言的二进制码,就把机器语言变成了汇编语 言。于是汇编语言亦称为符号语言。使用汇编语言编写的 程序,机器不能直接识别,要由一种程序将汇编语言翻译 成机器语言,这种起翻译作用的程序叫汇编程序,汇编程 序是系统软件中语言处理系统软件。汇编程序把汇编语言 翻译成机器语言的过程称为汇编