本节书摘来自华章计算机《Python语言程序设计》一书中的第1章,第1.3节,作者:[美]梁勇(Y. Daniel Liang) 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1.3 程序设计语言
关键点:计算机程序,又称为软件,是告诉计算机要做什么的指令集。
计算机并不理解人类的语言,所以程序必须用计算机使用的语言来书写。现在有几百种程序设计语言,开发它们对人们来说可以让程序设计过程更加简单。但是,所有的程序必须被转换成计算机能够理解的语言。
1.3.1 机器语言
计算机自己的语言(会因计算机的种类不同而有所不同)是它的机器语言——一套内嵌在计算机内的原始指令集。这些指令以二进制代码的形式存在,所以如果给计算机一条用它自己的语言编写的程序,必须输入二进制码的指令。例如:要对两个数字做加法,就必须编写一条二进制码的指令,如下所示:
1.3.2 汇编语言
用机器语言进行程序设计是一个繁琐的过程。而且,用机器语言编写的程序非常难以读懂,也很难修改。因此,在计算机发展的早期人们就发明了汇编语言作为机器语言的一个替代品。汇编语言使用一种简短的描述性单词(称为助记符)来表示每个机器语言指令。例如:助记符add表示数字的加法而sub表示数字的减法。要将数字2和3进行相加并得到结果,可能要编写一条如下所示的汇编代码的指令:
开发汇编语言是为了让程序设计更加容易。但是,因为计算机不能理解汇编语言,所以要使用另一种程序——称为汇编器——将汇编语言程序翻译成机器代码,如图1-8所示。
https://yqfile.alicdn.com/66229ea9ccd7f372491b2da916b71a7755c5f001.png" >
用汇编语言编写代码比用机器语言编写代码更加容易。但是,用汇编语言编写代码仍旧是很繁琐的。用汇编语言编写的每条指令本质上讲都对应到机器代码编写的一条指令。用汇编语言编写代码需要知道CPU是如何工作的。汇编语言被称为低级语言,因为汇编语言在本质上是接近机器语言的,而且它是不独立于机器的。
1.3.3 高级语言
20世纪50年代,出现了被称为高级语言的新一代的程序设计语言。它们是独立于平台的,也就是说,可以用高级语言编写程序并让它在不同类型的机器上运行。高级语言很像英语,并且易于学习和使用。高级程序设计语言编写的指令称为语句。例如:这里是一条用于计算半径为5的圆的面积的高级语言语句:
现在有很多种高级程序设计语言,而且每一种语言都是为了特定目的而设计的。表1-1罗列出一些流行的高级语言。
使用高级语言编写的程序称为源程序或源代码。因为计算机不能理解源程序,所以源程序必须被翻译成可执行的机器代码。使用另一个称为解释器或编译器的程序设计工具来完成这个翻译过程。
- 解释器从源代码中读取一条语句,将它翻译成为机器代码或者虚拟机代码,然后立即执行它,如图1-9a所示。注意:源代码中的一条语句可以被翻译成几条机器指令。
- 编译器将整个源代码翻译成一个机器代码文件,然后执行这个机器代码文件,如图1-9b所示。
a)解释器翻译和执行程序时,一次一句
b)编译器将整个源程序翻译成机器语言文件来执行
使用解释器运行Python代码。大多数其他程序设计语言使用编译器进行处理。
检查点
1.10 CPU能够理解的是什么语言?
1.11 什么是汇编语言?
1.12 什么是汇编器?
1.13 什么是高级程序设计语言?
1.14 什么是源程序?
1.15 什么是解释器?
1.16 什么是编译器?
1.17 解释语言和编译语言之间的区别是什么?