简述指令周期、机器周期、时钟周期
2015-05-30 20:54
323 查看
指令周期
指令周期是CPU从内存取出一条指令并执行这条指令的时间总和,一般由若干个机器周期组成,是从取指令、分析指令到执行完所需的全部时间。机器周期
机器周期也叫CPU周期,由于CPU访问一次内存所花的时间较长,因此用从内存读取一条指令字的最短时间来定义。在计算机中,为了便于管理,常把一条指令的执行过程划分为若干个阶段,每一阶段完成一项工作。如,取指令、存储器读、存储器写等,这每一项工作称为一个基本操作。完成一个基本操作所需要的时间称为机器周期。时钟周期
时钟周期也称为振荡周期,定义为时钟脉冲的倒数(可以这样来理解,时钟周期就是单片机外接晶振的倒数),是计算机中最基本的、最小的时间单位。一个机器周期包含若干个时钟周期。在一个时钟周期内,CPU仅完成一个最基本的动作。对于某种单片机,若采用了1MHZ的时钟频率,则时钟周期为1us;若采用4MHZ的时钟频率,则时钟周期为250us。N时钟周期 = 1机器周期
N机器周期 = 1指令周期
指令不同,所需的机器周期数也不同。对于一些简单的的单字节指令只需一个机器周期。对于一些比较复杂的指令,例如转移指令、乘法指令,则需要两个或者两个以上的机器周期。
从指令的执行速度看,单字节和双字节指令一般为单机器周期和双机器周期,三字节指令都是双机器周期,只有乘、除指令占用4个机器周期。
因此在进行编程时,在完成相同工作的情况下,选用占用机器周期少的命令会提高程序的执行速率,尤其是在编写大型程序程序的时候,其效果更加明显。
相关文章推荐
- ACM学习历程—FZU 2140 Forever 0.5(计算几何 && 构造)
- C# (二)无关紧要的
- 黑马程序员-C语言的几种定义类型的总结
- 【学习拾遗】Jquery(三)--ztree
- Codeforces Round #304 (Div. 2) C Soldier and Cards
- UINavigationItem不显示
- 如何选择Linux服务器操作系统
- 算法-毛利率
- 练习写代码的网站
- C++左旋字符串
- spinner requestlayout() improperly called by during layout running second layout pass
- R cannot be resolved to a variable 解决办法
- RobHess的SIFT源码分析:综述
- 软考(五)——系统开发和运行知识
- 无效GRANT语句导致主从同步断开
- Codeforces Round #304 (Div. 2) B
- 为什么程序员不擅长估算时间
- 项目经理两天要做的事
- xshell xftp 5系列
- 提高第38课时,实践1,用命令行运行程序