负责解释执行计算机指令的是,计算机负责解释和执行程序是什么

首页 > 实用技巧 > 作者:YD1662023-11-28 07:53:40

我们都编写郭计算机程序,比如C语言,程序编写完成之后,经过编译连接以后,没有错误的话,我们就可以直接点击运行,程序便可以执行完毕。计算机执行一条指令的过程,可能我们觉得很简单,但细想一下,里面的过程可能并不是很简单。

这里尝试从硬件的角度来简单解释一下一条指令的执行过程。

首先,计算机中的任何信息,都是以二进制表示的,所以,计算机中的指令也不例外。

这里以汇编语言中的汇编指令为例进行说明。如图1所示,每条汇编指令都对应这一个二进制数字,这个二进制数字就是指令机器码。为了说明方便,我们假设汇编指令ADD a,1对应的机器码是一个四位二进制数字,比如1101。ADD a,1这条指令的作用是把A寄存器的内容加1,如果我们假设A寄存器中的内容原来是0,那么,这条指令的执行结果就是寄存器A中的内容变成了1。

负责解释执行计算机指令的是,计算机负责解释和执行程序是什么(1)

图1

接下来我们简单看一下计算机指令的执行步骤,如图2所示。首先,计算机指令都是放在内存中的,这就好像一个老板交代他的秘书要做多少事情,然后12345列在一张纸条上,那张纸条就相当于内存。接下来,这个指令就要由内存传送到CPU去执行,这个传送过程是由计算机主板上的电路和数据线等等设备实现的,这个过程就相当于秘书要执行老板交代的那些事情,那他就必须按照那张纸条上 的规定一件件去完成。当他从纸条上看到第一件事,并把这件事记进自己脑袋瓜的时候,就相当于一条指令由内存传送进了CPU,CPU就相当于人脑。

负责解释执行计算机指令的是,计算机负责解释和执行程序是什么(2)

图2

接下来就是指令的执行过程。秘书看到纸条上的第一条指令以后,他的大脑会对那条指令进行分析思考,然后驱动自己的手脚去完成老板交代的第一件事情,对于秘书来说,这个过程是由他的神经系统完成的。同样,这条指令传送到CPU以后,如图2所示的指令寄存器,接下来就必须由CPU的电路系统来执行完成。图2表示,执行这条指令的电路系统是运算单元,为了方便,我们假设图2中运算单元的电路大概和图3类似。

前面已经假设,ADD a,1这条指令对应的机器码是1101,这个时候我们只要在图3 的输入端

ABCD分别输入电压(5v,5v,0v,5v),之后图3的电路就会有一个运行结果Y0--Y9。前面我们已经假设,ADD a,1这条指令的运行结果是使得A寄存器的内容变成1,这个时候我们就可以认为Y0--Y9的电压是Y0--Y8都是0v,而Y9是5V(对应数字1)。

负责解释执行计算机指令的是,计算机负责解释和执行程序是什么(3)

图3

再由图4看出,ALU(运算单元)是和寄存器(累加器)A连接在一起的,所以只要把Y0--Y9的电压值保存进累加器A,那么,ADD a,1这条指令就算执行完毕。

负责解释执行计算机指令的是,计算机负责解释和执行程序是什么(4)

图4

从以上过程可以看出,计算机执行一条指令,和一个人完成一件事情的过程大概相似,只不过人是由神经系统驱动自己的手脚去完成,电脑是CPU驱动电路来完成。

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.