3个字节的指令,指令周期为什么是4个时钟周期?

第四个时钟周期不是已经开始第二个指令了吗?图片

执行指令需要3个时钟周期
读取指令以及PC的修改也需要一个时钟周期吧

这应该涉及到组成原理吧,一般一个指令是四个周期,其中具体我也记得不是很清楚,你想知道具体我可以再问我,我看书回忆一下

也许问题早就解决了吧?
在看《解码:隐匿在计算机软硬件背后的语言》,发现对这句话也是不太明白,网上搜却发现了好多同样的提问。
这里说说我自己的理解。
这里所有的描述都是针对作者为了让我们明白临时创造出来的这台加法器。
简单说,就是这台加法器的1个指令周期=取指令3个时钟周期 + 处理指令1个时钟周期(“执行”这个词可能会跟执行一串指令混淆)。
这台加法器数据位宽是8位的,而可寻址空间为2^16,也就是说地址都是2个字节的。
每条指令包含3个字字节,包含1字节操作码本身,和2字节数据存储地址。
因为数据位宽是8位的,所以每次只能到出1个字节,因此要3个时钟周期取出全部指令。
2字节数据存储地址对应的数据是8位的,因此处理这些数据,又需要1个时钟周期(不管是把数据装入累加器,还是从累加器存到一个地址中)。

PS:这本书中有些错误,结合网友的做了一个勘误表,以供来者探讨。
编码:隐匿在计算机软硬件背后的语言(勘误)