计算机程序的执行过程是怎样的?

计算机程序的执行过程是怎样的?,第1张

执行程序的过程:

开始执行程序时,必须先给程序计数器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指令,于是,它"通知"控制器发出执行这条指令的各种控制命令。

1、输入采样阶段。在这一期间中,PLC以扫描方法读入一切输入端子上的输入信号,并将各输入状况存入对应的输入映像寄存器中。此刻,输入映像寄存器被刷断。在程序履行期间和输出改写期间中,输入映像存储器与外界阻隔,其内容坚持不变,直至下一个扫描周期的输入扫描期间,才被从头读入的输入信号改写。可见,PLC在履行程序和处置数据时,不直接运用现场其时的输入信号,而运用本次采样时输入到映像区中的数据。一般来说,输入信号的宽度要大于一个扫描周期,不然能够形成信号的丢掉。

2、程序履行阶段。在履行用户程序进程中,PLC依照梯形图程序扫描准则,一般来说,PLC按从左至右、从上到下的进程逐一履行程序。但遇到程序跳转指令,则依据跳转条件是不是满意来决议程序跳转地址。程序履行进程中,当指令中触及输入、输出状况时,PLC就从输入映像寄存器中“读入”对应输入端子状况,从输出映像寄存器“读入”对应元件(“软继电器”)的当时状况。然后进行相应的运算,运算成果再存入输出映像寄存器中。对输出映像寄存器来说,每一个元件(“软继电器”)的状况会跟着程序履行进程而改变。

3、输出改写阶段。程序履行期间的运算成果被存入输出映像区,而不送到输出端口上。在输出改写期间,PLC将输出映像区中的输出变量送入输出锁存器,然后由锁存器通过输出模块发生本周期的 *** 控输出。若是内部输出继电器的状况为“1”,则输出继电器触点闭合,通过输出端子驱动外部负载。

开发C程序有四个步骤:编辑、编译、连接和运行。

任何一个体系结构处理器上都可以使用C语言程序,只要该体系结构处理器有相应的C语言编译器和库,那么C源代码就可以编译并连接到目标二进制文件上运行。

1、预处理:导入源程序并保存(C文件)。

2、编译:将源程序转换为目标文件(Obj文件)。

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

4、运行:执行,获取运行结果的EXE文件。

扩展资料:

将C语言代码分为程序的几个阶段:

1、首先,源代码文件测试。以及相关的头文件,比如stdio。H、由预处理器CPP预处理为.I文件。预编译的。文件不包含任何宏定义,因为所有宏都已展开,并且包含的文件已插入。我归档。

2、编译过程是对预处理文件进行词法分析、语法分析、语义分析和优化,生成相应的汇编代码文件。这个过程往往是整个程序的核心部分,也是最复杂的部分之一。

3、汇编程序不直接输出可执行文件,而是输出目标文件。汇编程序可以调用LD来生成可以运行的可执行程序。也就是说,您需要链接大量的文件才能获得“a.out”,即最终的可执行文件。

4、在链接过程中,需要重新调整其他目标文件中定义的函数调用指令,而其他目标文件中定义的变量也存在同样的问题。

参考资料来源:百度百科-c语言


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存