执行MOV A, 5指令需要多少个CPU周期?

3

我的问题是计算执行MOV A,5指令需要多少个CPU周期。请对每个步骤进行描述。

有人能否解释一下这是如何工作的?而5是一个值,对吗?只需向我解释主要部分。

据我所知,

首先,
-从内存中获取指令(一个时钟周期)
-更新指令指针(一个时钟周期)
-解码指令以查看其操作(一个时钟周期)

在此之后我卡住了。


这取决于架构。 - rpax
1
看一下那个CPU的文档,这个简单操作的周期数清楚地标示出来了。例如:http://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-optimization-manual.pdf - Déjà vu
1个回答

1
我假设你在谈论x86处理器。当然这取决于处理器,但通常只需要1个时钟周期,就像我记得的那样。
这是因为指令是在流水线中执行的。这意味着当处理器计算指令的结果时,它正在解码下一个指令并提取前一个指令,以便处理器的每个部分都在忙于执行某些任务。
通常需要从内存获取数据或执行复杂计算(如乘法或除法)的指令需要更长的执行时间。
您也可以使用RDTSC获取周期数 https://www.ccsl.carleton.ca/~jamuir/rdtscpm1.pdf

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接