计算机编程语言的分类:

  • 机器语言(二进制代码)
  • 汇编语言(面向机器的程序设计语言)
  • 高级语言(按转换方式可分为两类:1.编译型语言;  2.解释型语言   ||  按照客观系统的描述可分为两类:1.面向过程语言;  2.面向对象语言    || 按照编程范型可分为:1.命令式语言;  2.函数式语言;  3.逻辑式语言;  4.面向对象语言

三种语言的优缺点:

机器语言:
可读性、可移植性差,编程繁杂。
直接执行,速度快,资源占用少;
汇编语言:
不同的处理器有不同的汇编语言语法和编译器,编译的程序无法在不同的处理器上执行,缺乏可移植性,难于从汇编语言代码上理解程序设计意图,可维护性差,即使是完成简单的工作也需要大量的汇编语言代码,很容易产生bug,难于调试,使用汇编语言必须对某种处理器非常了解,而且只能针对特定的体系结构和处理器进行优化,开发效率很低,周期长且单调。
能够保持机器语言的一致性,直接、简捷,并能像机器指令一样访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等。使用汇编语言,可以访问所有能够被访问的软、硬件资源,目标代码简短,占用内存少,执行速度快。
高级语言:
运行速度基本上比直接用汇编写的慢,速度和程序大小与编译软件有关。
高级语言接近算法语言,易学、易掌握,级语言为程序员提供了结构化程序设计的环境和工具,使得设计出来的程序可读性好,可维护性强,可靠性高;高级语言远离机器语言,与具体的计算机硬件关系不大,可移植性好,重用率高;由于把繁杂琐碎的事务交给了编译程序去做,所以自动化程度高,开发周期短,且程序员得到解脱,可以集中时间和精力去从事对于他们来说更为重要的创造性劳动,以提高程序的质量。

高级语言的分类:

按转换方式可分为两类:1.编译型语言;  2.解释型语言
1.编译型语言:
编译性语言写的程序在被执行之前,需要一个专门的编译过程,把程序编译成为机器语言的文件,比如exe文件,以后要运行的话就不用重新翻译了,直接使用编译的结果就行了(exe文件),因为翻译只做了一次,运行时不需要翻译,所以编译型语言的程序执行效率高。
2.解释型语言: 
解释性语言的程序不需要编译,在运行程序的时候才翻译,每个语句都是执行的时候才翻译。这样解释性语言每执行一次就需要逐行翻译一次,效率比较低。
现代解释性语言通常把源程序编译成中间代码,然后用解释器把中间代码一条条翻译成目标机器代码,一条条执行。
关于脚本语言
脚本语言是一种解释性的语言,脚本语言是为了缩短传统的编写-编译-链接-运行(edit-compile-link-run)过程而创建的计算机编程语言。脚本语言一般都 有相应的脚本引擎来解释执行。 他们一般需要解释器才能运行。一个脚本通常是解释运行而非编译。脚本语言通常都有简单、易学、易用的特性,目的就是希望能让程序员快速完成程序的编写工作。而宏语言则可视为脚本语言的分支,两者也有实质上的相同之处。脚本语言一般都是以文本形式存在,类似于一种命令。

举例:

解释性语言:Java、JavaScript、Perl、Python、Ruby、MATLAB 等。
编译性语言: C/C++、Pascal/Object Pascal(Delphi)
脚本语言:Python、JavaScript,ASP,PHP,Perl等


按照客观系统的描述可分为两类:1.面向过程语言;  2.面向对象语言

1.面向过程语言:
面向过程语言是以过程或函数为基础的,这种语言对底层硬件,内存等操作比较方便,但是写代码和调试维护等会很麻烦。例如:c语言
2.面向对象语言:
面向对象语言(Object-Oriented Language)是一类以对象作为基本程序结构单位的程序设计语言,指用于描述的设计是以对象为核心,而对象是程序运行时刻的基本成分。语言中提供了类、继承等成分。
面向对象语言的发展有两个方向:一种是纯面向对象语言,如Smalltalk、EIFFEL等;另一种是混合型面向对象语言,即在过程式语言及其它语言中加入类、继承等成分,如C++、Objective-C等


  • 按照编程范型可分为:1.命令式语言;  2.函数式语言;  3.逻辑式语言;  4.面向对象语言
    1.命令式语言:

    命令式程序设计语言是基于动作的语言,以冯诺依曼计算机体系结构为背景。机器语言及汇编语言是最早的命令式语言。在这种语言中,计算机被看做是动作的序列,程序就是用语言提供的操作命令书写的一个操作序列。用命令式程序设计语言编写程序,就是描述解题过程中每一步的过程,程序的运行过程就是问题的求解过程,因此也称为过程式语言。Fortran、ALGOL、COBOL、C、Ada、Pascal等都是命令式程序设计语言。
    2.函数式语言:
    函数式编程是种编程典范,它将电脑运算视为函数的计算。函数编程语言最重要的基础是 λ 演算(lambda calculus)。而且λ演算的函数可以接受函数当作输入(参数)和输出(返回值)。和指令式编程相比,函数式编程强调函数的计算比指令的执行重要。和过程化编程相比,函数式编程里,函数的计算可随时调用。这种语言的语义基础是基于数学函数概念的值映射的λ算子可计算模型。这种语言非常适合于进行人工智能等工作的计算。典型的函数式语言如 Lisp、Haskell、ML、Scheme 、F#等。
    3.逻辑式语言:
    这种语言的语义基础是基于一组已知规则的形式逻辑系统。这种语言主要用在专家系统的实现中。最著名的逻辑式语言是 Prolog。
    4.面向对象语言:
    现代语言中的大多数都提供面向对象的支持,但有些语言是直接建立在面向对象基本模型上的,语言的语法形式的语义就是基本对象操作。主要的纯面向对象语言是 Smalltalk。

计算机编程语言的分类,解释型语言、编译型语言、脚本语言的关系相关推荐

  1. 一文直观理解编译型语言、解释型语言和脚本语言的区别

    祁子禹 作为读者朋友的你很有钱,买下了一个电台,希望实现年少时开设私人电台的梦想. 你还酷爱诗歌文学,常常酾酒临江,横槊赋诗. 希望通过无线电波传到每个角落,让世界人民都能欣赏你的思绪飞扬. 当了电台 ...

  2. 计算机编程语言的分类,解释型语言、编译型语言、脚本语言的区别

    原文传送门:http://blog.csdn.net/liuchuo/article/details/52014764 计算机编程语言的分类: 机器语言(二进制代码) 汇编语言(面向机器的程序设计语言 ...

  3. 静态语言和脚本语言的区别

    在计算机编程语言中,可以将编程语言分为静态语言和脚本语言两类,这两类编程语言最主要的区别是执行方式的不同.想要区分静态语言和脚本语言的区别,首先需要区分编译和解释. 编译和解释 编译是指将源代码一次性 ...

  4. 计算机编程语言的分类与python语言快速度认识

    本节目标: 明确本课程的性质 聊一聊语言 语言的功能 语言是工具,目标是沟通交流,实现目标 语言的分类 人类语言 汉语,英语,日语,等等 ?思考,如何才能够学好语言,如何才可以学好英文 !答案: 动物 ...

  5. 编程语言和脚本语言的区别

    1.  脚本语言:C Shell.JavaScript.Nuva.Perl.PHP.Python.Ruby.Tcl.VBScript.CSS(常见) 脚本语言是为了缩短传统的编写-编译-链接-运行过程 ...

  6. python是脚本还是编程语言_关于Python是不是脚本语言的探讨

    很多人认为Python是单纯的脚本语言,认为它是一门简单的语言.其实,脚本语言并不是所谓的简单,而是简洁.Python可以使得一些复杂的编程任务变得简单而不是简单的编程语言.所以要是给Python一个 ...

  7. 编译性语言、解释性语言和脚本语言的区别

    计算机是不能理解高级语言,当然也就不能直接执行高级语言了.计算机只能直接理解机器语言,所以任何语言,都必须将其翻译成机器语言,计算机才能运行高级语言编写的程序. 一.翻译和解释的不同 翻译的方式有两种 ...

  8. st计算机编程语言,ST(结构化文本语言(ST))_百度百科

    ST (结构化文本语言(ST)) 语音 编辑 锁定 讨论 上传视频 本词条缺少概述图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧! 结构化文本/结构式文件编程语言(英语:Structured ...

  9. 计算机语言分类:机器语言、汇编语言、标记语言、脚本语言、编程语言

    一.计算机语言分类: 1. 机器语言 机器语言是计算机最原始的语言,是由0和1的代码构成,cpu在工作的时候只认识机器语言,即0和1的代码. 2. 汇编语言 汇编语言,即为一种低级语言,它用人类容易记 ...

最新文章

  1. ***产业链 安全新忧患
  2. python的re.findall()函数中的括号问题
  3. C++ Builder 5编HOOK程序
  4. MTK OEM Unlock
  5. linux的write是线程安全的吗,socket的write/send还是是否是线程安全?
  6. Linux学习之系统编程篇: 阻塞信号集、未决信号集、自定义信号集
  7. HTML5 的定位一些重要知识点
  8. java consumer.poll_java – 无法在kafka consumer下设置’max.poll.records’,其中cons.poll仍然返回分区下的所有记录...
  9. CentOS设置默认启动命令行(不启动图形界面)
  10. html中span隐藏属性,JS 如果改变span标签的是否隐藏属性
  11. UVALive 3135
  12. matlab怎么学机器人算法,机器人学、机器视觉与控制——MATLAB算法基础
  13. windows98 java_在win98下安装JSP环境
  14. Mathematica处理高斯光束的分布图像
  15. Appfuse中文乱码解决
  16. 计算机网络(自顶向下方法)读书笔记----吐血整理
  17. WinSCP下载安装及使用
  18. 最全面最详细的测试用例整理
  19. 服务器版本的ansys证书错误,关于ANSYS Workbench 出现证书错误的解决办法
  20. 宏文件下载_EPLAN~宏资源获取

热门文章

  1. Android开发学习之基于ViewPager实现Gallery画廊效果
  2. 《Linux命令行与shell脚本编程大全》读书笔记————第一章 初识Linux shell
  3. Android OpenSL ES 开发:Android OpenSL 录制 PCM 音频数据
  4. 使用Angular与TypeScript构建Electron应用(二)
  5. What is Leanstar.cn?
  6. Python发布 - distutils简单使用
  7. C++面试中string类的一种正确简明的写法
  8. 黑客发现瑞士电子选举系统中的多个漏洞并获奖2.7万美元
  9. 攻击者接管账户,攻陷周下载量超700万次的JavaScript 流行库 ua-parser-js
  10. 思科修复严重的企业 NFVIS 缺陷