description |
---|
How Computers Work |
计算机的基本工作原理是存储程序和程序控制。程序与数据都存储在内存储器中,CPU按照程序编排的顺序,一步一步地取出指令,自动完成指令规定地操作,这是计算机地基本工作原理。
具体描述如下:
(1)将程序和原始数据通过输入设备送入存储器。
(2)启动运行后,计算机从存储器中取出程序指令送到控制器去识别,分析该指令要做什么事。
(3)控制器根据指令的含义发出相应的命令(如加法、减法),将存储单元存放的操作数据取出送往运算器进行运算,再把运算结果送回指定的存储器单元。
(4)当运算任务完成后,就可以根据指令将结果通过输出设备输出。
计算机的工作过程实际上就是快速地执行指令地过程。指令执行时,必须先装入计算机内存储器,CPU负责从内存储器中逐条取出指令,并对指令分析译码,判断该条指令要完成地操作,向各部件发出完成操作的控制信号,从而完成一条指令地执行。总之,计算机的基本工作过程就是不断地重复取指令、分析指令及取数、执行指令,如此周而复始,直到遇到停机指令或外来事件的干预为止。
在计算机执行指令过程中有两种信息在流动:数据流和控制流。数据流包括原始数据、中间结果、结果数据和源程序等,这些信息从存储器读入运算器进行运算,所得的计算结果再存入存储器或传送到输出设备。控制流是由控制器对指令进行分析、解释后向各部件发出控制命令,指挥各部件协调地工作。
指令是一种能被计算机识别并执行的二进制代码,它规定了计算机能完成的某一种操作。一条指令通常由操作码和操作数两部分组成。
(1)操作码:指明该指令要完成的操作类型或性质,如加、减、取数或输出数据等。
(2)操作数:指明操作对象的内容或所在的单元地址,大多数情况下操作数是地址码。
通常一台计算机有许多条作用不同的指令,所有指令的集合称为该计算机的指令系统。
指令 | 说明 |
---|---|
数据传送型指令 | 实现主存和寄存器之间,或寄存器和寄存器之间的数据传送 |
数据处理型指令 | 用于定点数或浮点数的算数运算和逻辑运算 |
程序控制型指令 | 用于控制程序的流向 |
输入输出型指令 | 用于主机与外设之间交换信息 |
其他指令 | 除以上各类指令外较少被用到的一些指令,包括字符串操作指令、堆栈指令、停机指令等 |
不同种类的计算机,其指令系统的指令数目与格式也不相同。CPU的指令系统反映了计算机对数据进行处理的能力。
根据指令系统设计架构不同,产生了复杂指令系统计算机(Complex Instruction Set Computer,CISC)和精简指令系统计算机(Reduces Instruction Set Computer,RISC)
按照存储程序的原理,计算机在执行程序时必须先将要执行的相关程序和数据放入内存储器中,在执行程序时CPU根据当前程序指令寄存器的内容取出指令并执行指令,然后再取出下一条指令并执行,如此循环下去直到程序结束指令才停止执行。整个工作过程就是不断地取指令和执行指令,最后将计算结果放入指令指定的存储器地址中。
指令执行过程中所涉及的部件主要有程序计数器、指令寄存器、指令译码器、通用寄存器和运算器等。
一条指令的执行过程按时间顺序可以分为以下几个步骤:
(1)取指令。
(2)分析指令及取操作数。
(3)执行指令。
(4)写回数据及转下条指令。