![STC 32位 8051单片机原理与应用](https://wfqqreader-1252317822.image.myqcloud.com/cover/123/47549123/b_47549123.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.2.3 微型计算机的工作过程
微型计算机的工作过程就是程序的执行过程,计算机执行程序是一条指令一条指令执行的。执行一条指令的过程分为三个阶段,即取指令、指令译码与执行指令,执行完一条指令后,自动转向执行下一条指令。
(1)取指令:根据PC中的地址,在程序存储器中取出指令代码,并将其送到IR中。之后,PC自动加1,指向下一指令(或指令字节)地址。
(2)指令译码:ID对IR中的指令进行译码,判断出当前指令的工作任务。
(3)执行指令:在判断出当前指令的工作任务后,控制器自动发出一系列微指令,指挥计算机协调动作,从而完成当前指令指定的工作任务。
微型计算机的工作过程示意图如图1.5所示,程序存储器从0000H地址开始存放了如下所示的指令:
![](https://epubservercos.yuewen.com/3266A7/26947410007590906/epubprivate/OEBPS/Images/txt001_12.jpg?sign=1738936904-jOf8jqeu4uo1m6XUF6gbavZCS5p1CJk4-0-685afe35cda9feed460e2c4dd726b336)
下面分析微型计算机的工作过程。
(1)将PC内容0000H送地址寄存器(MAR)。
(2)PC值自动加1,为获取下一个指令字节的机器代码做准备。
(3)地址寄存器中的地址经地址译码器找到程序存储器的0000H单元。
(4)CPU发出读指令。
(5)CPU将0000H单元内容74H读出,并送至数据寄存器中。
(6)将74H送至IR中。
(7)经ID译码,判断指令所代表的功能,操作控制器(OC)发出相应的微操作控制信号,完成指令操作。
(8)根据指令功能要求,将PC内容0001H送至地址寄存器。
(9)PC值自动加1,为获取下一个指令字节的机器代码做准备。
(10)地址寄存器中的地址经地址译码器找到程序存储器的0001H单元。
(11)CPU发出读指令。
(12)CPU将0001H单元内容0FH读出,并送至数据寄存器中。
(13)数据读出后根据指令功能直接送累加器(ACC),至此,完成该指令操作。
![](https://epubservercos.yuewen.com/3266A7/26947410007590906/epubprivate/OEBPS/Images/txt001_13.jpg?sign=1738936904-0jbeKcJHptn2tBMGM7M37l8TclYacg8T-0-dc1feaec308ead961036c56e99fb3d4c)
图1.5 微型计算机的工作过程示意图