



    大家编写的程序在运行时需要经历
    
     图 1-1
    
    所示的流程。这张图是了解程序运行原理所必备的基础知识。详细内容笔者接下来会进行讲解,这里希望大家先有一个大概的印象。
    
     CPU
    
    
    是负责对最终转换为机器语言的程序内容进行解释和执行的设备。
   
    图 1-1 程序运行的图示
    CPU 和内存本质上都是名为集成电路(Integrated Circuit,IC)的电子部件,由大量晶体管构成。从功能上来说,如
    
     图 1-2
    
    所示,CPU 内部是由寄存器、控制器(control unit)、运算器(arithmetic unit)和时钟(clock)四个部分组成的,它们之间通过电流信号相互连通。
    
     寄存器
    
    是用来存放指令、数据这些操作对象的空间。一个 CPU 内部通常有几个到几十个不等的寄存器。
    
     控制器
    
    负责将内存中的指令和数据读入寄存器,并根据指令的执行结果对计算机进行控制。
    
     运算器
    
    负责运算从内存中读入寄存器的数据。
    
     时钟
    
    负责产生控制 CPU 工作节律的时钟信号
    
    ,也有一些计算机将时钟放在 CPU 的外部。
   
    图 1-2 构成 CPU 的四个部分
    下面来简单介绍一下内存。在计算机中我们通常所说的内存指的是
    
     主存储器
    
    (main memory)
    
    ,简称主存。它通过一些控制电路与 CPU 相连,用于存储指令和数据。内存由一些可读写的存储元件构成,每个字节(1 字节 8 比特)都分配了一个被称为
    
     地址
    
    的编号。CPU 通过地址就可以读取存放在内存中的指令和数据,也可以将数据写入内存。关闭计算机电源后,内存中存储的指令和数据就会消失。
   
弄清楚 CPU 的构造之后,大家是不是对程序运行的原理有一点概念了呢?当程序启动时,CPU 中的控制器会根据时钟信号从内存中读取指令和数据。通过对指令进行解释和执行,运算器会对数据进行运算,控制器根据运算结果控制计算机进行指定的操作。“控制”这个词可能有点让人难以理解,其实它指的就是除运算之外的操作(主要是数据输入输出的时机控制)。内存和磁盘的输入输出、键盘和鼠标的输入,以及显示器和打印机的输出等操作,都属于控制。