你了解主机的运行过程吗?

你了解主机的运行过程吗?,第1张

按照传统的称呼,将运算器、控制器和内存储器合在一起,称为主机,这是因为在早期的计算机中这三者是最重要的,是机器的主体。为了使读者能有一个尽管简单却较为完整的印象,这里介绍一下主机的运行原理。

程序的执行过程如下:

①控制器将指令计数器PC置0。

②取第一条指令:PC中的指令地址0被送往地址寄存器,经译码,选中0号存储单元;控制器发读命令。第一条指令被读出,经数据缓冲器、数据总线,进入指令寄存器IR。

③执行第一条指令:这是一条取数核裂指令:将8号存储单元的内容读出,送寄存器A。IR中地址码8被送往地址寄存器,经译码,选中8号存储单元;IR中 *** 作码为取数,微 *** 作命令产生电路根据 *** 作码译码结果和时序标志发出读命令,8号存储单元的内容(0000l011)被读出,经数据缓冲器进入数据总线;待稳定后,微 *** 作命令产生电路发命令BIS→A,于是读出的数据进入寄存器A。此期间PC在微 *** 作命令‘+l’的作用下加l,形成了下一条要执行的指令的地址。

④取第二条指令:过程同取第一条指令,只是现在Pc的内容为1,故将1号存储单元中的指令取出,送IR。

⑤执行第二条指令:过程同执行第一条指令,将9号存储单元的内容(00000101)读出,送寄存器改和闭B。此期间Pc在命令‘+1’的作用下再加l,变成2。

⑥取第三条指令:过程同前。

⑦执行第三条指令:这是一条加法指令:(A)+(B)→A。微 *** 作命令产生电路发A→L、B→R和ADD,相加的结果(00010000)被送上数据总线,待稳定棚巧后,微 *** 作命令产生电路发Bus—A,于是该结果被送人寄存器A。此期间PC同样被加1,变成3。

⑧取第四条指令:过程同前。

⑨执行第四条指令:这是一条存数指令:(A)一10号存储单元。IR中的地址码10,经译码选中10号存储单元;微 *** 作命令产生电路根据 *** 作码发出A→L和MOV(MOV为传送微 *** 作命令,此时右路选择控制信号全为0,即关闭右路选择器),这时ALU仅起数据通路的作用,于是A的内容通过左路选择器和ALU,进入数据总线;待稳定后,微 *** 作命令产生电路发出写命令,数据总线中的数据(00010000)经数据缓冲器被写入到10号存储单元。此期间PC同样被加1,变成4。

⑩继续执行下面的程序。

从上面的程序执行过程可以看出,计算机的工作过程是将内存中的指令逐条取出并执行的过程,这个过程是自动的、连续的,不需要人的干预。需要指出,指令的执行过程包括对指令的译码。控制器通过指令译码才知道这条指令是什么指令,才能发出相应的微 *** 作命令。

执行程序的过程:

开始执行程序时,必须先给迟塌程序计数器PC赋以第一条指令的首地址00H,然后就进入第一条指令的取令的取指令阶段。

第一条指令的执行过蚂埋程:

取指令阶段:

①将程序计数器PC的内容(00H)送至地址寄存器AR,记为PCAR。

②程序计数器PC的内容自动加1变为01H,为取下一个指令字节作准备,记码物圆为PC+1PC。

③地址寄存器AR将00H通过地址总线送至存储器,经地址译码器译码,选中00号单元,记为ARM。

④CPU发出"读"命令。

⑤所选中的00号单元的内容B0H读至数据总线DB,记为(00H)DB。

⑥经数据总线DB,将读出的B0H送至数据寄存器,记为DBDR。

⑦数据寄存器DR将其内容送至指令寄存器IR,经过译码,控制逻辑发出招待该条指令的一系列控制信号,记为DRIR,IRID、PLA。经过译码,CPU"识别"出这个 *** 作码就是MOVA,03指令,于是,它"通知"控制器发出执行这条指令的各种控制命令。

C源程序到运行程序步骤:

1.编辑:输入源程序并存盘(.C)

2.编译:将源程序翻译为目标文件(.OBJ)

3.链接:将目标文件生成可执行文件( .EXE)

4.运行:执伏滑枯行让郑.EXE文件,得到运缺洞行结果


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12401172.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存