【摘要】:程序执行流程如图2-4所示。程序执行过程如下:1)将PC中的地址值送地址寄存器,然后PC自动加1,即PC中地址变为0001H。2)地址寄存器中的地址经地址总线送到存储器,经译码选通0000H单元。至此,程序的第一条指令执行结束,程序下面的每条指令执行都类似重复上面的过程。
从指令的取指过程可以看出,计算机的取指令装置是按PC中的地址来读取指令的。因此,程序的执行线路实际上是由PC来决定的,更改PC中的值就会改变程序的流向。所以说,PC是计算机执行程序的引路人,又叫程序指针。程序执行流程如图2-4所示。
为更进一步了解程序执行过程,加深对指令、程序和PC这些概念的认识,下面通过如图2-5所示的模型机来分析一段简单程序,程序段如下:
图2-5 程序执行过程示意图
把程序的机器码存入程序存储器中。由于程序的首地址是0000H,所以在执行这个程序之前必须把首地址0000H存入PC中,然后启动程序执行。程序执行过程如下:
1)将PC中的地址值送地址寄存器,然后PC自动加1,即PC中地址变为0001H。
2)地址寄存器中的地址经地址总线送到存储器,经译码选通0000H单元。(www.xing528.com)
3)CPU控制器发出读信号,将0000H单元中的数据76H经数据总线传送到数据寄存器,由于该数据是指令中的操作码,因此由数据寄存器再传送到指令寄存器。
4)指令译码器对指令寄存器中的指令码进行分析,由控制器发出指令所规定的控制信号。
5)根据控制信号的指示,确认本指令还需要操作数,因此单片机又把PC中的地址值0001H送入地址寄存器,然后PC自动加1变为0002H。
6)地址寄存器中的地址0001H通过地址总线选通指向存储器的0001H单元,并发出读出信号,将该存储单元中的数据46H读入数据寄存器。
7)因为46H为操作数,所以按照指令的规定,该数据被送入累加器A。
至此,程序的第一条指令执行结束,程序下面的每条指令执行都类似重复上面的过程。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。