#280. 第三节 计算机语言

第三节 计算机语言

一、计算机语言的分类

二、低级语言

低级语言依赖于硬件,可读性和可移植性差。低级语言分为机器语言和汇编语言。

1. 机器语言

机器语言是用二进制代码表示的,不用经过翻译就以可以被机器直接理解和接受的程序语言或指令代码。它的特点是灵活、可直接执行和速度快。

2. 汇编语言

汇编语言是第二代计算机语言,它是一种使用助记符的编程语言。

  • 助记符:即用一些容易理解和记忆的字母和单词来代替一些特定的指令,比如,“ADD”(addition的缩写)代表加法操作指令,“SUB”(subtraction的缩写)代表减法操作指令,“MOV”(move的缩写)代表数据传递指令等。

三、高级语言

高级语言是一种独立于机器的语言,相对于汇编语言和机器语言来说,它“高级”在哪里呢?相比于低级语言,它是一种更接近我们平常使用的自然语言和数学公式的编程语言,因此,它更接近人类的思维方式,可读性和可移植性好。

1. 高级语言的“翻译”过程

高级语言必须“翻译”成机器语言后才能被机器执行。将高级语言编写的程序翻译成机器语言程序,翻译过程有编译和解释两种方式,它们的操作过程如下:

  • 编译过程:

  • 解释过程:

![](file://_41MraqiDoZeryf7CLQqY.png)

2. 高级语言的分类

2.1 从翻译过程方式的角度分类

从翻译过程方式的角度,我们可以将高级语言分为编译型语言(包括C、C++、Pascal、Fortran等)和解释型语言(包括Java、Python、Basic、C#等)。

  • 编译型语言:使用编译器来编译执行的编程语言,它的特点是编译时间较长,执行效率高,依赖编译器,跨平台性较差。
  • 解释型语言:使用解释器来解释执行的编程语言,它的特点是每个语句在被执行到的时候才翻译,执行效率较低,不依赖编译器,跨平台性好。

2.2 从解决问题方式的角度分类

从解决问题方式的角度,我们可以将高级语言分为面向过程语言(包括C、Pascal、Basic、Fortran等)和面向对象语言(包括C++、Java、Python、C#等)。

  • 面向过程:自顶向下逐步求精,最重要的是模块化的思想方法。通俗的讲,所谓的过程就是我们解决问题的步骤,当拿到一个问题时,自上而下的逐步分析这个问题是第一步先做什么,第二步再做什么,整个设计就像一条流水线,这是面向过程的思维。

  • 面向对象:把事物抽象成类,再实例化成对象,对象包括属性与行为。举个例子,比如把哺乳动物抽象成哺乳动物类,在哺乳动物类中,又有猫、狗、老鼠等等对象。用猫这种实例对象举例,它包括了有胡子、有爪子等属性,还包括吃鱼、睡觉等行为。

    image

  • 先有面向过程再有面向对象,面向对象是基于面向过程的。面向过程的方法在小规模程序中更有优势,面向对象的方法在大型项目中更有优势。

  • Fortran是第一个高级语言,Smalltalk是第一个支持面向对象的语言。

四、习题

  1. 以下不属于面向对象程序设计语言的是()。

{{ select(1) }}

  • Python
  • C++
  • Java
  • C
  1. C 语言、C++语言和 Fortran 语言都属于()。

{{ select(2) }}

  • 面向过程语言
  • 编译型语言
  • 低级语言
  • 解释型语言
  1. 能将高级语言转换成目标程序的是()。

{{ select(3) }}

  • 调试程序
  • 解释程序
  • 编译程序
  • 连续程序
  1. 下列语言中,能够被计算机直接识别和执行的是()。

{{ select(4) }}

  • 汇编语言
  • 机器语言
  • 低级语言
  • 高级语言
  1. 下列关于计算机语言的说法错误的是()。

{{ select(5) }}

  • 在大型项目中,面向过程的方法更有优势
  • 为提高开发效率,开发软件应尽量采用高级语言
  • 一般来说,编译型语言的执行效率比解释型语言高
  • 汇编语言是第二代计算机语言
  1. 以下关于高级语言的描述中,正确的是()。

{{ select(6) }}

  • 高级语言的“高级 ”是指所设计的程序非常高级
  • 高级语言可以直接被计算机执行
  • Fortran 是第一个高级语言,Smalltalk 是第一个支持面向对象的语言
  • C++语言、Java 语言和汇编语言都是高级语言。