
开始执行程序时,必须先给程序计数器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指令,于是,它"通知"控制器发出执行这条指令的各种控制命令。
计算机能直接执行的程序是可执行程序。
解析:
由高级语言编写的程序称为“源程序”。
由二进制代码表示的程序称为“目标程序”。
由汇编语言编写的程序称为“汇编程序”。
可执行程序是可在 *** 作系统存储空间中浮动定位的二进制可执行程序。
它可以加载到内存中,由 *** 作系统加载并执行。
对于计算机本身来说,它只能接收和处理由0到1的代码构成的二进制指令和数据。
即,计算机能识别的程序是“目标程序”。
而计算可以直接执行的程序是可执行程序,即扩展名为.exe的文件。
扩展资料:
程序的运行
为了使计算机程序得以运行,计算机需要加载代码,同时也要加载数据。从计算机的底层来说,
这是由高级语言(例如Java,C/C++,C#等)代码转译成机器语言而被CPU所理解,进行加载。
如果您在一个符合大多数的计算机上, *** 作系统例如Windows、Linux等,加载并执行很多的程
序,在这种情况下,每一个程序是一个单独的映射,并不是计算机上的所有可执行程序。
它是指为了得到某种结果而可以由计算机等具有信息处理能力的装置执行的代码化指令序列,或
者可以被自动转换成代码化指令序列的符号化指令序列或者符号化语句序列。同一计算机程序的
源程序和目标程序为同一作品。
参考资料:百度百科—可执行程序
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)