- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
最新MCS-51系列单片机指令系统及汇编语言程序设计
第三章 MCS-51系列单片机指令系统 3- 1 概述 指令:使计算机执行某种操作的命令。 33种功能,42种助记符,111条指令。 MCS-51指令系统可分为5大类: 数据传送类指令(共29条) 算术操作类指令(共24条) 逻辑操作类指令(共24条) 控制转移类指令(共17条) 布尔变量(位)操作类指令(共17条) 一、指令系统中常用符号 1、Rn : 工作寄存器,R0----R7,n = 0----7; 2、Ri : 间址寄存器,R0,R1,i = 0,1 3、direct:直接地址,8位内部数据存储单元地址。它可以是一个内部数据RAM单元(0~127)或特殊功能寄存器地址或地址符号;4、@Ri:通过寄存器R1或R0间接寻址的8位内部数据RAM单元(0~255),i=0,1。 @DPTR: 通过16位数据指针间接寻址。5、#data——指令中的8位立即数。 #data16——指令中的16位立即数。 6、rel:偏移量,补码形式的8位偏移量,用于相对转移和所有条件转移指令。偏移量相对于当前PC计算,在?-128~+127范围内取值。 7、bit: 位地址 二、 MCS-51单片机的寻址方式 MCS-51单片机共有7种寻址方式: 立即寻址 直接寻址 寄存器寻址 寄存器间接寻址 变址寻址 相对寻址 位寻址 1. 立即寻址 立即寻址就是把操作数直接在指令中给出,即操作数包含在指令中。立即操作数有8位和16位两种形式,前面加“#”来表示。 例如:MOV A, #0FFH ;将立即数FFH传送到累加器A中 MOV DPTR, #2000H ;将16位立即数2000H传送到数据指针DPTR中 MOV 40H, # 60H ;将立即数60H传送到40H内部RAM单元中 2. 直接寻址 指令中直接给出操作数地址的寻址方式。 例如:MOV A,30H ;内部RAM中的30H单元中的数据内容传送到累加器A中 3. 寄存器寻址 以通用寄存器的内容为操作数的寻址方式。通用寄存器包括:A,B,DPTR,R0~R7。其中,R0~R7必须在工作寄存器组之中。 例如:INC R0 ;(R0)+1→R0 需要注意的是,A和B既是通用寄存器,又是具有直接地址的特殊功能寄存器。 4. 寄存器间接寻址 以寄存器中的内容为地址,该地址中的内容为操作数的寻址方式。能够用于寄存器间接寻址的寄存器有:R0,R1,DPTR,SP。其中,R0,R1必须在工作寄存器组之中,SP仅用于堆栈操作。 例如: MOVX A, @R1 ;外部数据RAM中地址为P2R1的单元内容→A MOVX @DPTR,A ;A→外部数据RAM中DPTR为地址的单元 寄存器间接寻址的存储器空间包括:内部数据RAM和外部数据RAM。 内部数据RAM共用128字节,用一个字节的R0或R1可寻址整个空间。 外部数据RAM最大可达64K字节,仅用R0或R1无法寻址整个空间。在MCS-51系列单片机指令中,对外部数据RAM作间接寻址有两种方法:第一种由P2口提供高8位外部数据RAM地址,由R0或R1提供低8位地址,由此共同寻址64K空间;第二种是用16位的DPTR作寄存器间接寻址。 5. 变址寻址 由程序计数器PC或DPTR加上偏移量寄存器A中内容之和形成操作数地址的寻址方式。变址寻址只能对程序存储器中的数据作寻址操作。由于程序存储器是只读存储器,因此变址寻址操作只有读操作而无写操作。 例如: MOVC A, @A+DPTR ;A+DPTR为地址的存储器单元内容→A MOVC A, @A+PC ;A+PC为地址的存储器单元内容→A 6. 相对寻址 以当前程序计数器PC的内容为基址,加上指令给出的一字节补码数形成新的PC值的寻址方式。PC中的当前值称为基地址,一字节补码数称为偏移量,新的PC值称为转移目的地址。 例如:JC 80H ;C=1跳转 表示进位位C为0,则程序计数器PC中的内容不改变,即不转移。若进位位C为1,则PC中的当前值为基地址加上偏
文档评论(0)