51单片机执行指令的过程

发布者:collectors最新更新时间:2013-05-18 来源: 21ic关键字:51单片机  执行指令  控制线 手机看文章 扫描二维码
随时随地手机看文章

51单片机执行指令的过程
单片机执行程序的过程,实际上就是执行我们所编制程序的过程。即逐条指令的过程。计算机每执行一条指令都可分为三个阶段进行。即取指令-----分析指令-----执行指令。
取指令的任务是:根据程序计数器PC中的值从程序存储器读出现行指令,送到指令寄存器。
分析指令阶段的任务是:将指令寄存器中的指令操作码取出后进行译码,分析其指令性质。如指令要求操作数,则寻找操作数地址。
计算机执行程序的过程实际上就是逐条指令地重复上述操作过程,直至遇到停机指令可循环等待指令。
一般计算机进行工作时,首先要通过外部设备把程序和数据通过输入接口电路和数据总线送入到存储器,然后逐条取出执行。但单片机中的程序一般事先我们都已通过写入器固化在片内或片外程序存储器中。因而一开机即可执行指令。
下面我们将举个实例来说明指令的执行过程:
开机时,程序计算器PC变为0000H。然后单片机在时序电路作用下自动进入执行程序过程。执行过程实际上就是取出指令(取
出存储器中事先存放的指令阶段)和执行指令(分析和执行指令)的循环过程。
例如执行指令:MOV A,#0E0H,其机器码为“74H E0H”,该指令的功能是把操作数E0H送入累加器,
0000H单元中已存放74H,0001H单元中已存放E0H。当单片机开始运行时,首先是进入取指阶段,其次序是:
1 程序计数器的内容(这时是0000H)送到地址寄存器;
2 程序计数器的内容自动加1(变为0001H);
3 地址寄存器的内容(0000H)通过内部地址总线送到存储器,以存储器中地址译码电跟,使地址为0000H的单元被选中;
4 CPU使读控制线有效;
5 在读命令控制下被选中存储器单元的内容(此时应为74H)送到内部数据总线上,因为是取指阶段,所以该内容通过数据总线被送到指令寄存器。
至此,取指阶段完成,进入译码分析和执行指令阶段。
由于本次进入指令寄存器中的内容是74H(操作码),以译码器译码后单片机就会知道该指令是要将一个数送到A累加器,而该数是在这个代码的下一个存储单元。所以,执行该指令还必须把数据(E0H)从存储器中取出送到CPU,即还要在存储器中取第二个字节。其过程与取指阶段很相似,只是此时PC已为0001H。指令译码器结合时序部件,产生74H操作码的微操作系列,使数字E0H从0001H单元取出。因为指令是要求把取得的数送到A累加器,所以取出的数字经内部数据总线进入A累加器,而不是进入指令寄存器。至此,一条指令的执行完毕。单片机中PC=0002H,PC在CPU每次向存储器取指或取数时自动加1,单片机又进入下一取指阶段。这一过程一直重复下去,直至收到暂停指令或循环等待指令暂停。CPU就是这样一条一条地执行指令,完成所有规定的功能

关键字:51单片机  执行指令  控制线 引用地址:51单片机执行指令的过程

上一篇:Keil软件的串口通讯调试
下一篇:语音通信保密系统设计

推荐阅读最新更新时间:2024-03-16 13:24

51单片机,18B20,1602温度计+串口通信
制作出来的实物图如下: 仿真原理图如下(proteus仿真工程文件可到本帖附件中下载) 上位机: 安装程序解压到同一目录下。再运行setup安装。。。。 温度计.exe 编写环境Win10 x64. VS2010 x86 C++ MFC 测试环境Win10 x64. 在32位系统上,能不能正常使用还不清楚。 所以公布了源代码文件,如果在32位系统上,不能正常使用。 请使用源代码文件,在32位系统上重新生成一下应用程序。。。 单片机源程序如下: #include reg52.h #include math.h bit flag1s = 0, _up = 0;
[单片机]
<font color='red'>51单片机</font>,18B20,1602温度计+串口通信
51单片机程序——用按键控制蜂鸣器的启动和停止
#include reg52.h #define uint unsigned int //宏定义 sbit SPK=P3^5; //定义喇叭端口 sbit key=P3^1; //开发板上对应的是s18按键 void delay(uint z) { uint x,y; for(x=z;x 0;x--) for(y=110;y 0;y--); } void main() { while(1) { if(key==0) { delay(100); SPK=0; delay(100); SPK=1; } else
[单片机]
51单片机 | 实现SMC1602液晶屏显示实例
LCD1602 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1602的意思是每行显示16个字符,一共可以显示两行。如果是12232液晶(图形型液晶)则表示由122列32行组成,即共有122*32个点 p.s.注意使用温度,通常液晶的工作范围为0~+55℃,存储温度范围为-22~+60℃。 - - - - - - - - - - - - - - - - - - - - - -
[单片机]
<font color='red'>51单片机</font> | 实现SMC1602液晶屏显示实例
51单片机与PC串口通信程序及硬件电路图
#include reg51.h #define BUFFERLEGTH 10 //----------------------------------------------------------------- void UART_init(); //串口初始化函数 void COM_send(void); //串口发送函数 char str ; char j; //------------------------------------------------------------------- void main(void) { unsigned char i; UART_init
[单片机]
<font color='red'>51单片机</font>与PC串口通信程序及硬件电路图
51单片机银行自动取款机模拟仿真
卡1卡2卡3键 表示插入的卡号 卡1密码是123456 余额20500 卡2密码654321余额2600 卡3密码111111 余额3700 准备钞票键表示系统以为用户准备好钞票取走钞票键表示用户取走钞票 有自动存储功能他已经存到iic中了 你没次打开的时候要初始化iic所以看不到 运行一下在再把始化的屏蔽掉在运行就行了 查询 取款 改密 退卡 都是旁边对应的键
[单片机]
<font color='red'>51单片机</font>银行自动取款机模拟仿真
8051单片机存储器地址分配
一、程序存储器空间 MCS-51单片机具有64kB程序存储器寻址空间,它是用于存放用户程序、数据和表格等信息。 1、对于内部无ROM的8031单片机,它的程序存储器必须外接,空间地址为64kB,此时单片机的使能端端必须接地。强制CPU从外部程序存储器读取程序。 2、对于内部有ROM的8051等单片机,正常运行时,则需接高电平,使CPU先从内部的程序存储中读取程序,当PC值超过内部ROM的容量时,才会转向外部的程序存储器读取程序。 8051片内有4kB的程序存储单元,其地址为0000H 0FFFH,单片机启动复位后,程序计数器的内容为0000H,所以系统将从0000H单元开始执行程序。但在程序存储中有些特殊的单元,这
[单片机]
8051单片机的数据传输方式
单片机CPU与外部设备交换信息通常有如下几种方式:无条件传送方式,查询传送方式和中断传送方式。我们以单片机与微型打印机接口为例讲述这三种方式。假定用户要打印三个数据,这三个数据保存在单片机的内部数据存储器10H,11H,和12H中,8051用并口P2与微型打印机的并行数据口DB进行数据交换。 (1)无条件传送方式 这种数据传送方式中没有联络信号,即CPU总是认为打印机在如何时候都是处于“准备好”的状态。这种传送方式中只需要在程序中加入数据送往P2的指令,数据传送便可以实现。但这种数据传送方式有一个致命弱点,数据易丢失,这是因为CPU的速度相当快,而打印机的速度相对来说较慢,其结果是在打印机打印一个数据的时间内,CPU已
[单片机]
80<font color='red'>51单片机</font>的数据传输方式
基于51单片机和加速度传感器在人体坐姿的中的应用
本文把加速度传感器作为检测的模块,一方面可用来防止坐姿的不当,提醒本人注意坐姿,另一方面可用来做运动的测量装置如(计步器)(灯光调节器)(音乐调节器)。可把它作为一个运动检测的扩展平台,故其具有广阔的应用前景。   坐姿纠正系统   本设计主要是完成对颈部、背部、腰部以及腿部的测量。首先是静止状态下颈部和背部的检测。有关数据表明:人体在正常情况下,当脊柱的倾斜度偏离正常生理弯曲大于15度,时间达到40~50秒,就有可能形成不良姿势习惯。这时利用置于颈部的加速度传感器给出的倾斜度数据进行报警提醒,对于初始的人体正常生理弯曲,将设定一个固定的门限值,以针对不同的对象,来得到最佳的报警提示。其次是运动状态下时腰部和腿部的检测
[单片机]
基于<font color='red'>51单片机</font>和加速度传感器在人体坐姿的中的应用
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved