欢迎来到天天文库
浏览记录
ID:50166293
大小:216.50 KB
页数:33页
时间:2020-03-09
《单片机原理及应用设计 教学课件 作者 白林峰 李国厚 主编 孔晓红 副主编第3章 MCS-51系列单片机的指令系统.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第3章MCS-51系列单片机的指令系统指令是指挥计算机执行某种操作的命令,一台计算机所有指令的集合称为指令系统。不同类型的计算机有不同的指令系统,一般来说是互不兼容的。指令系统反映了计算机的主要功能,是在设计计算机时确定下来的。计算机只能识别和执行机器语言的指令,机器语言指令采用二进制编码,称为指令的机器码或指令码。每一条指令在存放时都是以其机器码的形式存储的,各条指令的机器码以字节为单位存放,不同指令的字节数不一样。指令字越长,所占用内存单元越多。一、指令格式MCS-51系列单片机的汇编指令一般由4个部分组成,指令格式如下:标号:操作码助记符操作数;注释
2、1.标号标号就是指令的符号地址,或者说是指令地址的符号表示。(1)一般用在一条指令前,代表该指令的地址,是用符号表示的地址。(2)通常用作控制转移的目标地址或一段功能程序的识别标记。(3)由英文字母和数字组成。(4)标号必须用冒号“:”与操作码分隔。2.操作码助记符用于表示指令的操作功能。(1)操作码助记符表示指令的操作功能,如片内RAM的数据传送用MOV,加法用ADD,逻辑与用ANL等。(2)操作码是指令的必需部分,是指令的核心,不可缺少。3.操作数操作数是指指令中参加运算的参数或参数的地址。(1)操作数表明了参数的来源,可以是指令中参与运算的参数,也可
3、以是参数的地址或操作数的其他信息。(2)操作数可分为目的操作数和源操作数。(3)操作数可用二进制数、十进制数、十六进制数或ASCII表示。(4)操作数的个数可以是0~3个。(5)操作数与操作码之间用一个或多个空格分隔。操作数超过一个时,操作数与操作数之间要用逗号“,”分隔。4.注释注释是对指令功能的简单说明。(1)注释是对该指令的解释,可以有,也可以没有。注释属于非必需项,是为便于程序的阅读,对指令功能作的说明和注解。(2)注释必须以分号“;”开始。5.对于MCS-51系列单片机的指令系统,其机器码根据指令编码长短的不同可以分以下3种格式:(1)单字节指令
4、单字节指令有如下两种编码格式一种是8位编码只表示操作码,指令的操作对象很明确,如加1指令INCA的机器码为04H。另一种是8位编码由操作码和寄存器编码组成。这类指令的高5位表示操作码,低3位表示通用寄存器Rn(n=0~7),例如加法指令ADDA,Rn的编码格式为:00101rrr高5位0010l表示该指令的操作码,低3位rrr表示寄存器Rn(n=0~7),指令所完成的功能是将Rn中的数据和累加器A中的数据相加,结果送回累加器A中。(2)双字节指令双字节指令的编码格式为:操作码操作数第一个字节表示操作码,第二个字节表示参与操作的数据(data)或数据所在的存
5、储单元的地址。(3)三字节指令三字节指令的编码格式为:第一个字节表示指令操作码,后两个字节为参与操作的数据或该数据所在的存储单元的地址。6.指令常用符号说明Rn:表示当前选中的8个工作寄存器Rn(n=0~7)中的任一个。Ri:表示8个内部工作寄存器中的两个寄存器R0、R1,可作地址指针即间址寄存器,采用@Ri(i=0,1)的形式。direct:表示8位内部数据存储器单元的地址,即片内RAM单元的地址(范围是00H~FFH),可以是片内RAM的00H~7FH单元或特殊功能寄存器的地址,如I/O端口、控制寄存器、状态寄存器等(范围是80H~FFH)。#data
6、:表示包含在指令中的8位立即数。#data16:表示包含在指令中的16为立即数。addr16:表示16位的目的地址,用于LCALL和LJMP指令中,目的地址范围是64KB的程序存储器地址空间。addr11:表示11位的目的地址。用于ACALL和AJMP指令中,目的地址必须存放在与下一条指令的第一个字节同一个2KB程序存储器的地址空间之内。rel:表示8位带符号的相对偏移量,用于SJMP和所有的条件转移指令中。偏移字节相对与下一条指令的第一个字节计算,范围是-128~+127。DPTR:即数据指针,一般用作16位的地址寄存器。bit:表示片内RAM或特殊功能
7、寄存器中的支持位寻址的直接位寻址。A:累加器ACC。B:特殊功能寄存器,用于MUL和DIV指令中。C:为进/借位标志或进/借位位,或布尔处理机中的累加器。@:为间址寄存器或基址寄存器的前缀。如@Ri,@A+PC,@A+DPTR。/:位操作数的前缀,表示对该位取反。X:是指片内RAM单元的直接地址或寄存器,表示该单元中的数据。在直接寻址方式中,表示直接地址单元中的数据。(X):在间接寻址方式中,表示由间址寄存器指向的地址单元中的数据。所谓指向是指以间址寄存器中的数据为地址,实际访问的是该地址单元所对应的数据。→:表示数据的传送方向。↔:表示两个单元的数据互相
8、交换。二、寻址方式1.立即寻址立即寻址是在指令中直接给出操作数的寻
此文档下载收益归作者所有