天天看点

时钟周期 指令周期 机器周期的理解

     时钟周期:时钟周期也称为振荡周期,定义为时钟脉冲频率的倒数(时钟周期就是单片机外接晶振的倒数,例如12M的晶振,它的时钟周期就是1/12us),是计算机中的最基本的、最小的时间单位,也即CPU主频。时钟脉冲是计算机的基本工作脉冲,控制着计算机的工作节奏。时钟频率越高,工作速度就越快。

      机器周期:计算机中,常把一条指令的执行过程划分为若干个阶段,每一个阶段完成一项工作。每一项工作称为一个基本操作,完成一个基本操作所需要的时间称为机器周期。8051系列单片机的一个机器周期由6个S周期(状态周期)组成。 一个S周期=2个节拍(P),所以8051单片机的一个机器周期=6个状态周期=12个时钟周期。例如外接24M晶振的单片机,他的一个机器周期=1/24M×12=12/24M 秒。

      指令周期:执行一条指令所需要的时间,一般由若干个机器周期组成。指令不同,所需的机器周期也不同。最简单的是NOP(no operation)指令,它不完成任何操作,只使程序计数器PC加1,所以占用一个机器周期

      一句话来讲:指令周期、机器周期和时钟周期之间的关系,指令周期通常用若干个机器周期表示,而机器周期时间又包含有若干个时钟周期。

      单片机的字长简单的说:一个机器周期内,8位单片机能同时处理 8位数据(1字节) ,16位单片机能同时处理16位数据(2字节) ,32位单片机能同时处理32位数据(4字节) ,能同时处理的数据越多,工作效率越高,速度越快。同时内部指令有长短,分为1字节指令,2字节指令等等,8位机就是一个机器周期可以执行一条1字节指令,所以32位机一个机器周期可执行4条1字节指令,处理能力更强,速度更快。这些字长应该是包含操作码跟操作数在内的,因为底层执行时不管是操作码还是操作数全都是二进制,由CPU来执行。