- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 8051单片机指令系统 主讲 朱兆优 本章学习要点: (1) 8051单片机指令系统、指令格式、寻址方式; (2) 8051单片机中111条指令的使用要点; (3) 灵活运用汇编指令,并能用单片机指令编写汇编语言程序。 介绍8051内核单片机汇编语言的指令系统。 3.1 指令系统概述 MCS-51的基本指令共111条,按指令所占的字节来分: (1) 单字节指令49条; (2) 双字节指令45条; (3) 三字节指令17条。 按指令的执行时间来分: (1) 1个机器周期(12个时钟振荡周期)指令64条 (2) 2个机器周期(24个时钟振荡周期)指令45条 (3) 只有乘、除两条指令的执行时间为4个机器周期(48个时钟振荡周期)。 12MHz晶振:机器周期为1?s。 3.2 指令格式 两部分组成,即操作码和操作数。 操作码用来规定指令进行什么操作 操作数则是指令操作的对象 有单字节指令、双字节指令、三字节不同长度的指令。 指令格式不同: (1)单字节指令:指令只有一个字节,操作码和操作数同在一个字节中。 (2)双字节指令:一个字节为操作码,另一个字节是操作数。 (3)三字节指令:操作码占一个字节,操作数占二个字节。其中操作数既可能是数据,也可能是地址。 3.2.3 指令中常用的符号 指令中符号的意义: Rn 当前寄存器区的8个工作寄存器R0~R7(n=0~7)。 Ri 当前选中的寄存器区中可作间接寻址寄存器的2 个寄存器R0、R1(i=0,1)。 Direct 直接地址,即8位的内部数据存储器单元或特殊功能寄存器的地址。 #data 包含在指令中的8位立即数。 #data16 包含在指令中的16位立即数。 rel 相对转移指令中的偏移量,为8位的带符号补 码数 DPTR 数据指针,可用作16位的数据地址寄存器。 bit 内部RAM或特殊功能寄存器中的直接寻址位。 C(或Cy) 进位标志位或位处理机中的累加器。 addr11 11位目的地址 addr16 16位目的地址 @ 间接寻址寄存器前缀,如@Ri,@A+DPTR (X) X中的内容。 ((X)) 由X寻址的单元中的内容。 → 箭头右边的内容被箭头左边的内容所取代。 3.3 指令系统的寻址方式 寻址方式就是在指令中说明操作数所在地址的方法。 共7种寻址方式。 1.寄存器寻址方式 操作数在寄存器中 MOV A,Rn ;(Rn)→A,n=0~7 表示把寄存器Rn的内容传送给累加器A 寻址范围包括: (1)4组通用工作寄存区共32个工作寄存器。 (2)部分特殊功能寄存器,例如A、B 以及数据指针寄存器DPTR等。 2.直接寻址方式 操作数直接以单元地址的形式给出: MOV A,40H 寻址范围: (1) 内部RAM的128个单元 (2) 特殊功能寄存器。除了以单元地址的形式外,还可用寄存器符号的形式给出。例如: MOV A,80H 与 MOV A,P0是等价的。 3. 寄存器间接寻址方式 寄存器中存放的是操作数的地址 在寄存器的名称前面加前缀标志“@” 访问内部RAM或外部数据存储器的低256个字节时,只能采用R0或R1作为间址寄存器。例如: MOV A,@Ri ;i=0或1 其中Ri中的内容为40H,把内部RAM40H单元内容送A。 寻址范围: (1)访问内部RAM低128个单元,其通用形式为@Ri (2)对片外数据存储器的64K字节的间接寻址,例如: MOVX A,@DPTR (3)片外数据存储器的低256字节 例如:MOVX A,@Ri (4)堆栈区 堆栈操作指令PUSH(压栈)和POP(出栈)使用堆栈指针(SP)作间址寄存器 例如:MOV R0,#30H ;(R0)←30H。 MOV A,@R0 ;(A)←((R0))。 MOV @R0,A ;((R0))←(A)。 4.立即寻址方式 操作数在指令中直接给出,需在操作数前面加前缀 “#”。例如: MOV A,#40H 5.基址寄存器加变址寄存器间址寻址方式 本寻址方式是以DPTR或PC作基址寄存器,以累加器A作为变址寄存器。 例如:指令 MOVC A,@A+DPTR 其中A的原有内容为10H,DPTR的内容为1020H,该指令执行的结果是把程序存储器1030H单元的内容传送给A。 说明: (1)本寻址方式是专门针对程序存储器的寻址
您可能关注的文档
最近下载
- 2017年版2020年修订高中课程标准培训《高中体育与健康课程标准的继承、创新与发展》.ppt VIP
- N2010色谱工作站说明书.doc VIP
- 2017年版2020年修订高中课程标准培训《基于学科核心素养的高中体育与健康教学改革》.ppt VIP
- 涂塑钢管焊接施组方案.pptx VIP
- TCECS1179-2022 预铺防水卷材应用技术规程.pdf VIP
- 普通高中体育与健康课程标准2017年版2020年修订解读与培训课件.pptx VIP
- 2025届高考数学复习 解析几何 备考策略课件.pptx
- 仪表实操题集.doc VIP
- 2023年煤矿企业安全生产管理人员考试题库.pdf VIP
- 【总结】水利工程建设监理工作总结报告..docx VIP
文档评论(0)