扩展6—计算机语言的分类

本文为L_Ares个人写作,以任何形式转载请表明原文出处。

其实本节不应算在扩展章节,本节陈述的都是一些基本的计算机知识,内容对于大学的计算机及关联专业中都曾有老师系统性的讲解过,本节仅是为了记录大学知识中的一部分——关于计算机语言的分类。为方便下面知识的探索进行一个简要的铺垫。

一、什么是计算机语言

1. 定义

计算机语言是指计算机进行通讯的语言,计算机语言是人和计算机进行传递消息的媒介。

2. 特征

计算机语言的最大特征就是指令通过一种语言传达给计算机。

二、计算机语言的分类

  1. 低级语言
    • (1.1) 机器语言
    • (1.2) 汇编语言(符号语言)
  2. 高级语言
  3. 专用语言

1. 低级语言

1.1 机器语言

概念

机器语言是指一台计算机全部指令的集合。

概述

电子计算机所使用的是01组成的二进制数。而二进制数是计算机的语言基础。

当我们要实现一句话或者完成一个操作,就要写成一条条的由01组成的指令序列交由计算机执行。这种计算机能够认识的语言,就是机器语言。

而因为这样的书写方式,机器语言构造的程序就是一个一个的二进制文件。一条机器语言,就是一条指令,指令是不可分割的最小功能单元。

而且因为计算机的指令系统往往各不相同,所以在一台计算机上执行的程序,要想在另一条计算机上执行,必须另编程序。

优点

  1. 机器语言或称二进制代码语言,计算机可以直接识别,不需要进行任何翻译。
  2. 每台计算机的指令,其格式和代码所代表的含义都是硬性规定的,故称之为面向机器的语言,也称为机器语言。它是第一代的计算机语言。机器语言对不同型号的计算机来说一般是不同的,因而效率很高。

缺点

因为它严重地依赖于具体的计算机,所以可移植性差,重用性差。

1.2 汇编语言

概念

人们为了克服机器语言编程的缺点,进行了改进。用一些简洁的英文字母、符号串来替代一个特定指令二进制串。这些特定指令就是汇编语言

概述

汇编语言是第二代计算机语言,它将机器语言的缺点进行减小,让复杂的计算机语言变的更易懂,比如 : MOV代表移动、ADD代表加法。这样一来,人们可以更加容易的去读懂程序在做什么,纠错和维护变得更加方便。

在汇编语言中,用助记符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码。这样用符号代替机器语言的二进制码,就把机器语言变成了汇编语言。因此汇编语言亦称为符号语言

使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序

汇编程序是系统软件中语言处理的系统软件。汇编程序汇编语言翻译成机器语言的过程称为汇编

优点

  1. 保持了机器语言的优点,具有直接和简捷的特点。
  2. 可有效地访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等。
  3. 目标代码简短,占用内存少,执行速度快,是高效的程序设计语言。
  4. 汇编语言是我们理解整个计算机系统的最佳起点和最有效途径。

缺点

  1. 在编写复杂程序时,相对高级语言代码量大。
  2. 而且汇编语言依赖于具体的处理器体系结构,不能通用,因此不能直接在不同处理器体系结构之间移植。

2. 高级语言

计算机是不可以直接理解任何除机器语言之外的语言的,所以想要执行除机器语言之外的语言编写的程序,我们就需要把我们所写的程序语言翻译成机器语言,这样计算机才可以执行我们写的程序。

2.1 编译器

概念

将其他语言翻译成机器语言的工具,叫做编译器

概述

编译器将其他语言翻译(转换)成机器语言的方式有两种 :

  • 第一种 : 编译
  • 第二种 : 解释

区别

翻译(转换)时间的不同。另外,当编译器解释的方式对高级语言进行翻译(转换)的时候,就叫做解释器

常见

高级语言更常见的执行方式,是通过编译来完成翻译,进而执行我们的程序。

2.2 编译型语言

概念

需要通过编译方式,被转换成机器语言的语言叫做编译型语言

概述

编译型语言编写的程序在执行之前要有一个专门编译的过程,这个过程一次性的将全部的其他语言代码翻译(转换)成可被硬件(计算机)直接运行的二进制的机器语言

编译好的可执行文件可以在其相应的平台上运行,在运行的时候一般不需要额外再进行其他的翻译(转换)。

也存在有些程序在编译之后,需要组装两个及两个以上的目标代码,再生成最终的可执行文件,这个过程就是我们常说的链接

优点

编译型语言因为提前一次性的做好了翻译(转换)的过程,所以在执行的时候,不需要再进行翻译(转换),执行效率也就相对更高。

缺点

  1. 跨平台性差。不同的平台需要的机器语言可能不同,需要为不同的平台翻译(转换)不同的机器语言。
  2. 每次修改代码后,都需要重新编译一次全部的代码,否则修改的代码是无法生效的。造成了调试程序较慢。

2.3 解释型语言

概念

需要通过解释方式,将其他语言转换成机器语言的语言叫做解释型语言

概述

解释型语言编写的程序不需要提前进行编译,以文本的方式存储要执行的代码。解释型语言想要翻译(转换)成机器语言,则必须要时刻携带解释器

解释型语言在转换成机器语言的过程中,用户首先要调用解释器,一边将解释型语言转成机器语言,另一边又要把转换完成的指令交给计算机执行。

每个语句都在即将被执行的时候才会被转换成机器语言,这种情况下,解释型语言的代码每执行一次,就要被翻译(转换)一次。

优点

  1. 跨平台性好。因为解释型语言一定要带着解释器才可以,所以只要针对不同的平台,更换相应的解释器即可。
  2. 可以随时修改代码内容,并且立即见效。

缺点

  1. 运行效率比编译型语言低。
  2. 解释器有着高依赖性。

2.4 脚本语言

概念

脚本语言的特性和解释型语言类似。

脚本语言是为了缩短传统的编写-编译-链接-运行(edit-compile-link-run)过程而创建的计算机编程语言。也是需要相应的类似于解释器脚本引擎来对其进行翻译(转换),才可以转换成机器语言

概述

  1. 脚本语言的执行一般都是通过解释方式将代码转换成机器语言,而不是通过编译的方式。

  2. 脚本语言通常都有简单易学易用的特性。

  3. 脚本语言一般以文本的形式存在,类似于一种命令

三、结尾

专用语言就不单独说了,比较典型的比如CAD还有数据库语言。本文主要的目的就是为了后面的一些内容做铺垫。

你可能感兴趣的:(扩展6—计算机语言的分类)