cpu执行一条指令的时间?cpu响应d *** 请求的时间

牵着乌龟去散步 万象 4 0

今天给各位分享cpu执行一条指令的时间的知识,其中也会对cpu响应d *** 请求的时间进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录

  1. 简述CPU执行一条指令的过程
  2. 计算机执行一条指令需要多长时间怎么算的
  3. cpu执行一条指令所需要的时间称为什么
  4. cpu每取出一条指令并执行该指令的时间称为
  5. cpu执行一条指令需要多少个时钟周期

一、简述CPU执行一条指令的过程

几乎所有的冯·诺伊曼型计算机的CPU,其工作都可以分为5个阶段:取指令、指令译码、执行指令、访存取数、结果写回。

取指令(Instruction Fetch,IF)阶段是将一条指令从主存中取到指令寄存器的过程。

程序计数器PC中的数值,用来指示当前指令在主存中的位置。当一条指令被取出后,PC中的数值将根据指令字长度而自动递增:若为单字长指令,则(PC)+1àPC;若为双字长指令,则(PC)+2àPC,依此类推。

cpu执行一条指令的时间?cpu响应dma请求的时间-第1张图片-

取出指令后,计算机立即进入指令译码(Instruction Decode,ID)阶段。

在指令译码阶段,指令 *** 按照预定的指令格式,对取回的指令进行拆分和解释,识别区分出不同的指令类别以及各种获取 *** 作数的 *** 。

在组合逻辑控制的计算机中,指令 *** 对不同的指令 *** 作码产生不同的控制电位,以形成不同的微 *** 作序列;在微程序控制的计算机中,指令 *** 用指令 *** 作码来找到执行该指令的微程序的入口,并从此入口开始执行。

在取指令和指令译码阶段之后,接着进入执行指令(Execute,EX)阶段。

此阶段的任务是完成指令所规定的各种 *** 作,具体实现指令的功能。为此,CPU的不同部分被连接起来,以执行所需的 *** 作。

根据指令需要,有可能要访问主存,读取 *** 作数,这样就进入了访存取数(Memory,MEM)阶段。

此阶段的任务是:根据指令 *** 码,得到 *** 作数在主存中的 *** ,并从主存中读取该 *** 作数用于运算。

作为最后一个阶段,结果写回(Write Back,WB)阶段把执行指令阶段的运行结果数据“写回”到某种存储形式:

结果数据经常被写到CPU的内部寄存器中,以便被后续的指令快速地存取;

在有些情况下,结果数据也可被写入相对较慢、但较廉价且容量较大的主存。许多指令还会改变程序状态字寄存器中标志位的状态,这些标志位标识着不同的 *** 作结果,可被用来影响程序的动作。

在指令执行完毕、结果数据写回之后,若无意外事件(如结果溢出等)发生,计算机就接着从程序计数器PC中取得下一条指令 *** ,开始新一轮的循环,下一个指令周期将顺序取出下一条指令。

开机时,程序计算器PC变为0000H。然后单片机在时序电路作用下自动进入执行程序过程。执行过程实际上就是取出指令(取出存储器中事先存放的指令阶段)和执行指令(分析和执行指令)的循环过程。

例如执行指令:MOV A,#0E0H,其机器码为“74H E0H”,该指令的功能是把 *** 作数E0H送入累加器。

0000H单元中已存放74H,0001H单元中已存放E0H。当单片机开始运行时,首先是进入取指阶段,其次序是:

1.程序计数器的内容(这时是0000H)送到 *** 寄存器;

2.程序计数器的内容自动加1(变为0001H);

3. *** 寄存器的内容(0000H)通过内部 *** 总线送到存储器,以存储器中 *** 译码电跟,使 *** 为0000H的单元被选中;

5.在读命令控制下被选中存储器单元的内容(此时应为74H)送到内部数据总线上,因为是取指阶段,所以该内容通过数据总线被送到指令寄存器。至此,取指阶段完成,进入译码分析和执行指令阶段。

由于本次进入指令寄存器中的内容是74H( *** 作码),以 *** 译码后单片机就会知道该指令是要将一个数送到A累加器,而该数是在这个代码的下一个存储单元。

所以,执行该指令还必须把数据(E0H)从存储器中取出送到CPU,即还要在存储器中取第二个字节。其过程与取指阶段很相似,只是此时PC已为0001H。指令 *** 结合时序部件,产生74H *** 作码的微 *** 作系列,使数字E0H从0001H单元取出。

因为指令是要求把取得的数送到A累加器,所以取出的数字经内部数据总线进入A累加器,而不是进入指令寄存器。至此,一条指令的执行完毕。单片机中PC="0002H",PC在CPU每次向存储器取指或取数时自动加1,单片机又进入下一取指阶段。

这一过程一直重复下去,直至收到暂停指令或循环等待指令暂停。CPU就是这样一条一条地执行指令,完成所有规定。

二、计算机执行一条指令需要多长时间怎么算的

计算机中时钟周期是(主频的倒数),一个时钟周期cpu仅完成一个最基本的动作,完成一个基本 *** 作的时间为机器周期,一般由几个时钟周期组成;完成一条指令为指令周期。一般由几个机器周期组成,指令不同机器周期数也不同。

以我的本本1.6G为例,机器周期由两个时钟周期组成,平均三个机器周期完成一条指令(这要假设,我看不到)

时钟周期为1/(1.6*1024m)=0.61ns机器周期为0.61*2=1.22ns

平均指令执行速度为1/(3.66ns)=273.22MIPS(百万条指令每秒)

这只是计算 *** ,条件也是假设的,晶振我不知。

大致算法就这样,我数学不好。如有算错请多指教!

三、cpu执行一条指令所需要的时间称为什么

1、cpu执行一条指令所需要的时间称为指令周期,指令周期一般由若干个机器周期组成,是从取指令、分析指令到执行完所需的全部时间。

2、计算机之所以能自动地工作,是因为CPU能从存放程序的内存里取出一条指令并执行这条指令;紧接着又是取指令,执行指令,如此周而复始,构成了一个封闭的循环。除非遇到停机指令,否则这个循环将一直继续下去。

3、在取指令的阶段,指令是放在存储器(也就是内存)里的,实际上,通过PC寄存器和指令寄存器取出指令的过程,是由 *** (Control Unit) *** 作的。指令的 *** 过程,也是由 *** 进行的。

4、一旦到了执行指令阶段,无论是进行算术 *** 作、逻辑 *** 作的 R型指令,还是进行数据传输、条件分支的 I型指令,都是由算术逻辑单元(ALU) *** 作的,也就是由运算器处理的。不过,如果是一个简单的无条件 *** 跳转,那么可以直接在 *** 里面完成,不需要用到运算器。

5、参考资料来源:百度百科——指令周期

四、cpu每取出一条指令并执行该指令的时间称为

1、指令周期是取出一条指令并执行这条指令的时间。一般由若干个机器周期组成,是从取指令、分析指令到执行完所需的全部时间。

2、指令周期类型有非访内指令的指令周期、取数指令的指令周期、存数指令的指令周期、空 *** 作指令和转移指令的指令周期。

3、指令周期,读取-执行周期(fetch-and-execute cycle)是指CPU要执行指令经过的步骤。

4、计算机之所以能自动地工作,是因为CPU能从存放程序的内存里取出一条指令并执行这条指令;紧接着又是取指令,执行指令,如此周而复始,构成了一个封闭的循环。除非遇到停机指令,否则这个循环将一直继续下去。

5、指令周期:CPU从内存取出一条指令并执行这条指令的时间总和。

6、CPU周期:又称机器周期,CPU访问一次内存所花的时间较长,因此用从内存读取一条指令字的最短时间来定义。

7、时钟周期:通常称为节拍脉冲或T周期。一个CPU周期包含若干个时钟周期。

五、cpu执行一条指令需要多少个时钟周期

1、指令不同机器周期数也不同,一条指令还是相当复杂的,处理器在一个时钟周期内肯定是完不成的,可能需要好多个时钟周期来完成执行。

2、如果这样让处理器执行完一条指令,再去执行另一条,处理器的效率是很低的,假如一条指令是5个时钟周期完成,对于500MHZ的处理器串行运行指令,1秒内取指100000000次。

3、因此处理器引入了流水线技术,将一条指令划分为多个功能,由不同的功能部件来执行,并且这些功能部件可以并行工作。

4、计算机每执行一条指令都可分为三个阶段进行。即取指令-----分析指令-----执行指令。取指令的任务是:根据程序计数器PC中的值从程序存储器读出现行指令,送到指令寄存器。

5、分析指令阶段的任务是:将指令寄存器中的指令 *** 作码取出后进行译码,分析其指令 *** 质。如指令要求 *** 作数,则寻找 *** 作数 *** 。计算机执行程序的过程实际上就是逐条指令地重复上述 *** 作过程,直至遇到停机指令可循环等待指令。

6、计算机进行工作时,首先要通过外部设备把程序和数据通过输入接口电路和数据总线送入到存储器,然后逐条取出执行。但单片机中的程序一般事先我们都已通过写入器固化在片内或片外程序存储器中。因而一开机即可执行指令。

文章到此结束,如果本次分享的cpu执行一条指令的时间和cpu响应d *** 请求的时间的问题解决了您的问题,那么我们由衷的感到高兴!

标签: 时间 指令 响应 cpu 请求

抱歉,评论功能暂时关闭!