计算机系统概论论文

  • 格式:docx
  • 大小:114.31 KB
  • 文档页数:11

课程考试(论文)题目:了解程序设计语言的发展及应用院系:互联网+学院专业:计算机网络专业年级:2016级班级:D16-1班学号:201607040303学生姓名:陈瑞二○一六年十二月二十日四川科技职业学院实践类考试(考查)考评表目录摘要 (1)一、序论 (1)1、论题 (1)2、写作意图 (1)3、内容提要 (1)4、关键字 (1)二、本论 (4)1、程序设计语言概述 (5)(1)、机器语言的特点 (6)(2)、汇编语言的特点 (6)(3)、高级语言的特点 (6)2、各类程序设计语言的应用 (5)(1)、过程化语言用于将算法表示成命令 (6)(2)、函数式语言用于一系列输入到输出的映射 (6)(3)、逻辑式语言适用于人工智能这样的特定的知识领域 (6)(4)、面对对象语言用于定义对象并将操作应用于对象 (6)(5)、专用语言适合于特殊的任务 (6)3、程序语言的发展趋势 (5)(1)、智能化 (6)(2)、网络化 (6)(3)、标准化 (6)三、结论 (4)摘要在第一节C语言课时老师曾说过,人与人的交流靠的是语言。

那么人若想和机器交流,就要掌握机器能懂的语言,那就是程序设计语言。

程序设计语言能够实现人与计算机的交流,指挥计算机进行复杂的工作。

本文由此出发,对程序设计语言进行概述,其中包括各类程序设计语言的特点及应用,还有程序设计语言的发展趋势,对程序设计语言进行整体的把握。

关键字:C语言计算机程序设计语言正文一、序论1、论题:了解程序设计语言的发展及应用2、写作意图:在大体上把握程序设计语言的基本情况。

3、内容提要:在第一节C语言课时老师曾说过,人与人的交流靠的是语言。

那么人若想和机器交流,就要掌握机器能懂的语言,那就是程序设计语言。

程序设计语言能够实现人与计算机的交流,指挥计算机进行复杂的工作。

本文由此出发,对程序设计语言进行概述,其中包括各类程序设计语言的特点及应用,还有程序设计语言的发展趋势,对程序设计语言进行整体的把握。

二、本论(一)、程序设计语言概述1、机器语言的特点从年代表来看,机器语言属于最早的程序设计语言,即第一代计算机语言。

美国普林斯顿大学的冯·诺依曼于1945年提出计算机体系结构设计思想。

计算机从1946年问世至今都是以这种思想为基本依据的。

其中很重要的一个思想就是二进制。

计算机的内部电路是由开关和其他电子器件组成,而这些器件只有两种状态,即开或关。

一般情况下,“开”状态用1表示,“关”状态用0表示,计算机所使用的是由“0”和“1”组成的二进制数,二进制是计算机语言的基础。

所以,计算机语言就是一串串由“0”和“1”组成的指令序列,然后交由计算机执行。

计算机语言又称面向机器的语言或低级语言,是计算机在发展早期唯一的程序设计语言。

类似与“10110101 00000000”的一串代码被称为指令,一条指令就是机器作数或操作数的地址。

通过多个“0”和“1”可组成各种排列组合,通过线路变成电信号,让计算机执行各种不同的操作。

机器语言的一个很大的优点是它可以直接被计算机识别,不需要进行任何翻译。

虽然大多数其他的语言可以既可被编译又可被解译,但大多数只在一种情况下能够良好运行。

在一些编程系统中,程序要经过几个阶段的编译,一般而言,后阶段的编译往往更接近机器语言。

机器语言具有灵活、直接执行和速度快等特点。

由于使用的是针对特定型号计算机的语言,因此,机器语言的运算效率是所有语言中最高的。

但是,用机器语言编写程序,编程人员要首先熟记所用计算机的全部指令代码和代码的涵义。

手编程序时,程序员得自己处理每条指令和每一数据的存储分配和输入输出,还得记住编程过程中每步所使用的工作单元处在何种状态。

这是一件十分繁琐的工作,编写程序花费的时间往往是实际运行时间的几十倍或几百倍。

而且,编出的程序全是些0和1的指令代码,直观性差,还容易出错。

总结说来,缺陷如下。

一,繁琐;二,可靠性差;三,难以理解;四,可读性差;五,可移植性差。

所以现在,除了计算机生产厂家的专业人员外,绝大多数的程序员已经不再去学习机器语言了。

2、汇编语言的特点汇编语言也是利用计算机所有硬件特性可以直接控制硬件的语言,又称符号语言。

汇编语言是在20世纪50年代,数学家Grace Hopper发明。

在汇编语言中,使用助记符代替操作码,用地址符号或标号代替地址码。

采用符号来代替机器语言的二进制码,把机器语言变成了汇编语言。

使用汇编语言编写的程序,机器不能直接识别,还要由汇编程序或者叫汇编语言编译器转换成机器指令。

汇编程序将符号化的操作代码组装成处理器可以识别的机器指令,这个组装的过程称为组合或者汇编。

因此,有时候人们也把汇编语言称为组合语言。

有了汇编语言,编写程序有了很大的进步。

汇编语言优点颇多,能够直接访问与硬件相关的储存器或I/O端口;能够不受编译器的限制,对生成的二进制码进行完全的控制;能够对关键码进行更准确的控制,避免因线程共同访问或者硬件设备共享引起的死锁;能够根据特定的应用对代码做最佳的优化,提高运行速度;能够最大限度的发挥硬件的功能。

尽管如此,汇编语言依然存在局限性。

编写的代码非常难懂,不好维护;很容易产生bug,难以调试;只能针对特定的体系结构和处理器进行优化;开发效率很低,时间长且单调;编写的程序仍然依赖于机器。

这些问题值得注意。

3、高级语言的特点高级语言属于第三代程序设计语言,比起前面的两种更加简单易用。

在高级语言下,其语法和结构更类似普通英文,远离对计算机硬件的直接操作,不必关心机器的具体实现,一般人经学习后都可以编写程序。

它允许用英文写解题的计算程序,程序中所使用的运算符号和运算式子,都和我们日常用的数学式子差不多。

高级语言容易学习,通用性强,书写出的程序比较短,便于推广和交流,是很理想的一种程序设计语言。

高级语言发展于50年代中叶到70年代,有些流行的高级语言已经被大多数计算机厂家采用,固化在计算机的内存里。

高级语言并不是特指的某一种具体的语言,而是包括很多编程语言,如目前流行的java,c,c++,C#,pascal,python,lisp,prolog,FoxPro,VC,易语言,中文版的C语言习语言等等,这些语言的语法、命令格式都不相同。

其中就包括我们正在学习的C语言和即将接触的C++。

从我们近期的初步学习来看,高级语言对于初学者还是比较容易掌握的。

这就体现了它的优越性。

程序设计语言从机器语言到高级语言的抽象,带来的主要好处有:高级语言接近算法语言,易学、易掌握,一般工程技术人员只要几周时间的培训就可以胜任程序员的工作;高级语言为程序员提供了结构化程序设计的环境和工具,使得设计出来的程序可读性好,可维护性强,可靠性高;高级语言远离机器语言,与具体的计算机硬件关系不大,因而所写出来的程序可移植性好,重用率高;由于把繁杂琐碎的事务交给了编译程序去做,所以自动化程度高,开发周期短,且程序员得到解脱,可以集中时间和精力去从事对于他们来说更为重要的创造性劳动,以提高程序的质量。

(二)、各类程序设计语言的应用1、过程化语言用于将算法表示成命令过程化语言又称为命令式语言或强制性语言。

过程化程序设计语言即第三代程序设计语言,指需要由编写程序的人员一步一步地安排好程序的执行过程的程序设计语言。

它采用与计算机硬件执行程序相同的方法来执行程序,实际上是一套指令,这些指令从头到尾按一定的顺序执行,除非有其他指令强行控制。

一句话来说,过程化语言就是将算法表示成命令的序列。

过程化语言中的每条指令只能是如下两种情况的一种,一是操作数据项;二是控制下一条要执行的指令。

且不同的过程化语言有各自不同的特点。

例如C语言,具有一些低级指令,简洁高效,已被ANSI和ISO标准化;Ada语言,具有并行处理能力;COBOL语言,能快速访问,更新数据库,能生成大量报表,方便的格式化输出;Fortran语言,高精度运算,复杂数据的处理能力,指数运算等。

2、函数式语言用于一系列输入到输出的映射用函数式语言设计程序实际上就是将预先定义好的“黑盒”联结在一起,每一个“黑盒”都接收一定的输入并产生一定的输出,通过一系列输入到输出的映射,实现所要求的输入和输出的关系,“黑盒”又称为函数,这也是被称为函数式程序设计的原因。

函数式语言可以实现两个功能,定义一系列基本函数,可供其他任何需要者调用和允许通过组合若干个基本函数来创建新函数。

其优点体现在:它的形式化基础;通过增加额外的可重用功能,它们很容易被扩展;统一的程序设计隐喻,从而每件事都是一个函数;较高级的结构体(函数的函数)容易表达;支持多态性类型(像ML一样)或完全风格的类型自由(像Lisp)一样。

下面也列举出一些函数式语言及其特点。

F#,基于微软.NET语言提供运行环境;LISP/Scheme,受λ演算影响,语法语义极度精简;Erlang,能应对大规模并发活动的编程语言和运行环境;Haskell,纯函数式程序语言,没有函数副作用。

3、逻辑式语言适用于人工智能这样的特定的知识领域逻辑式语言又称为声明式语言或说明性语言。

它依据逻辑推理的原则回答查询,该语言解决问题的基本算法就是反复的进行归结和推理。

逻辑程序设计的基本观点是程序描述的是数据对象之间的关系,它的抽象层次更高而不限于函数(映射)关系。

关系也是联系,对象和对象,对象和属性的联系就是我们所说的事实。

事实之间的关系以规则表述,根据规则找出合乎逻辑的事实就是推理。

因此,逻辑程序设计范型是陈述事实,制定规则,程序设计就是构造证明。

程序的执行就在推理,和传统程序设计范型有较大的差异。

比较著名的就是prolog。

Prolog语言是20世纪70年代在法国开发出来的,prolog系统中的程序全部是由事实和规则组成,程序员的工作就是开发事实和规则的集合,这个集合可以描述所以的信息。

基于逻辑式语言的特点,要求程序员必须掌握和学习相关主题领域的知识,同时还应该掌握如何在逻辑上严谨地定义准则,才能使得程序可以进行推导并产生新的事实。

4、面对对象语言用于定义对象并将操作应用于对象面向对象语言是一类以对象作为基本程序结构单位的程序设计语言,指用于描述的设计是以对象为核心,而对象是程序运行时刻的基本成分。

语言中提供了类、继承等成分。

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

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