开始一段旅程之前,我们通常想要知道它的大概路线。
学习编程也是一样,我们投入到细节之前,也应该了解一下程序是如何被创建和工作的,以及一门编程语言被设计出来的背景。
不要在意本章描述了一些你无法理解的东西,对它们大体上有个概念就行。在续章节会详细介绍它们。
1、机器语言
计算机中负责执行程序的那一小块芯片叫做CPU(Central Processing Unit)。
程序对于计算机来说就是一组指令列表,这种指令叫做机器语言。在早期,每个类型电脑都有自己的机器语言。
当CPU执行程序的时候,程序被存储在“内存”(也叫RAM —— Random Access Memory)。
除了程序本身,还有程序计算时用到的数据也会加载到内存。内存由很多有序“块”组成,每个“块”都有自己的地址。当CPU需要访问内存块中的数据,就把包含地址的信号发给内存,内存返回该地址指向的数据,CPU也会往内存中写入数据,用于保存一些地址。
对于机器语言,CPU的操作非常简单,就是不停地从内存中读出指令,执行,然后读出下一条,执行……。
CPU读和执行指令的细节不是特别重要,但是有一些基本概念值得了解。在CPU内部有一些寄存器,寄存器是小型的存储单元,可以存储数字或者指令。CPU使用一个寄存器来跟踪程序执行的位置,这个寄存器可以把它叫做计数器(Program Counter)。计数器只保存CPU将要执行的下一条指令的地址。
计算机执行机器语言是完全机械的物理行为。CPU的计算