欢迎来到天天文库
浏览记录
ID:39629695
大小:1.21 MB
页数:53页
时间:2019-07-07
《单片机原理及应用(C51版)第3章MCS-51指令系统》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第3章MCS-51指令系统及汇编语言程序设计3.1指令系统简介及寻址方式3.2指令系统及应用举例3.3汇编语言程序设计3.4实训项目33.1指令系统简介及寻址方式指令系统是一种CPU所能直接执行的所有命令的集合,CPU的主要功能是由它的指令系统来体现的。MCS-51系列单片机指令系统共有111条指令,其中有49条单字节指令、45条双字节指令和17条三字节指令。MCS-51的指令系统中有64条指令的执行时间为一个机器周期(12个振荡周期),45条指令的执行时间为两个机器周期。3.1.1指令分类按指令实现的功能可分为五大类:1)数据传送指令:
2、完成数据交换、存储。包括片内RAM、片外RAM、程序存储器的传送指令,交换及堆栈指令。2)算术运算类:完成各种算术运算,包括加法、带进位加、减、乘、除、加1、减1指令。3)逻辑运算类:完成逻辑运算,包括逻辑与、或、异或、测试及移位指令。4)布尔变量操作类:完成单独一位的操作,分为位数据传送、位与、位或、位转移指令。5)控制程序转移类:实现各种有条件和无条件的转移等,包括无条件转移、条件转移、子程序调用返回、中断返回及空操作指令3.1.2指令格式MCS-51指令系统中的每一条指令都有两级指令格式:CPU可直接识别并执行的机器语言指令。汇
3、编语言指令(简称汇编指令)。机器语言指令由二进制数“0”和“1”编码而成,也称目标代码,执行速度最快。汇编语言指令是在机器语言指令的基础上,用英文单词或英文单词缩写表示机器语言指令的操作码(助记符),用符号表示操作数或操作数的地址。汇编语言指令实际上是符号化的机器语言MCS-51汇编语言指令格式由以下几个部分组成:[标号:]操作码[目的操作数][,源操作数][;注释]其中:[]中的项表示为可选项;标号:又称为指令地址符号,一般是由1~6个字符组成,以字母开头的字母数字串,与操作码之间用冒号分开;操作码:是由助记符所表示的指令的操作功能;操
4、作数:是指参加操作的数据或数据的地址;注释:是为该条指令作的说明,以便于阅读。操作码是指令的核心,不可缺少,其他几项根据不同指令为可选项。3.1.3寻址方式所谓寻址方式就是寻找或获得操作数的方式。MCS-51指令系统的寻址方式有以下7种:1.立即寻址在立即寻址方式中,操作数直接出现在指令中。操作数前加“#”号表示,也称立即数。指令的操作数可以是8位或16位数。例如:MOVA,#26H;A←26H指令执行结果:(A)=26H,即把立即数26H直接送到A中。2.直接寻址在直接寻址方式中,操作数的单元地址直接出现在指令中,这一寻址方式可进行内部
5、存储单元的访问。它包括:(1)特殊功能寄存器地址空间。这也是惟一可寻址特殊功能寄存器(SFR)的寻址方式。例如:MOVTCON,ACC指令执行结果:累加器A的内容传送给寄存器TCON。(ACC在汇编后的机器码为字节地址E0H,因而为直接寻址。而A表示对累加器的寄存器寻址。)(2)内部RAM的低128字节例如:MOVA,76H指令执行结果:内部RAM地址为76H单元的内容传送给A。3.寄存器寻址在寄存器寻址方式中,寄存器中的内容就是操作数。例如:MOVA,R1;A←(R1)指令执行结果:把寄存器R1中的内容送到累加器A中。4.寄存器间接寻址
6、在寄存器间接寻址方式中,指定寄存器中的内容是操作数的地址,该地址对应存储单元的内容才是操作数。(1)访问内部数据存储器时,用当前工作寄存器R0和R1作间址,即@R0、@R1,例如:MOVA,@R0该指令的功能是将R0所指存储单元中内容送A中。(2)访问外部存储器,16位数据指针DPTR作为间址寄存器。例如:MOVXA,@R1MOVX@DPTR,A(3)在堆栈操作中则用堆栈指针SP作间址。5.变址寻址变址寻址方式是以程序指针PC或数据指针DPTR为基址寄存器,以累加器A作为变址寄存器,两者内容相加(即基地址+偏移量)形成16位的操作数地址,
7、变址寻址方式主要用于访问固化在程序存储器中的某个字节。变址寻址方式有两类:(1)用程序指针PC作基地址,A作变址,形成操作数地址:@A+PC。(2)用数据指针DPTR作基地址,A作变址,形成操作数地址:@A+DPTR。6.相对寻址相对寻址是以程序计数器PC的当前值作为基地址,与指令中的第二字节给出的相对偏移量rel进行相加,所得和为程序的转移地址。7.位寻址MCS-51系列单片机中有独立的性能优越的布尔处理器,包括位变量操作运算器、位累加器和位存储器,可对位地址空间的每个位进行位变量传送、状态控制、逻辑运算等操作。位地址包括:内部RAM地
8、址空间的可进行位寻址的128位;SFR地址空间的可位寻址的11个8位寄存器的88位。位寻址给出的是直接地址。3.1.4寻址空间MCS-51的7种操作数的寻址方式与所涉及到的存储器空间的关系如下
此文档下载收益归作者所有