- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
 - 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
 - 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
 
                        查看更多
                        
                    
                单片机技术及应用--第三章 MCS-51指令系
                    教学提示 本章重、难点在于理解单片机MCS-51指令系统的寻址方式,以及数据传送类指令、算术运算类指令、逻辑操作类指令、位操作指令和控制转移类指令操作的含义和具体使用方法。 教学目标 掌握指令系统的寻址方式。 掌握汇编语言指令的格式。 掌握汇编语言指令的功能及应用。 掌握伪指令的格式及应用。 3.1  指 令 格 式 单片机指令包含两个基本部分:操作码和操作数。操作码用来指定指令的功能,而操作数则是指令操作的对象。 比如做加法运算:ADD  A,R0,就表示将寄存器A和R0中的数据相加后将结果存放到A寄存器中。在这里,ADD即为操作码,A和R0即为操作数。指令有定长和不定长之分,定长指令其操作码的位数为一定值,不定长指令其操作码为变动的,一般使用频率最高的采用最短的操作码。 单片机一般采用的是不定长指令格式,MCS-51机器语言根据指令的长短又将指令分为一字节指令、二字节指令、三字节指令3种格式。一字节指令即在程序存储器中需要一个字节的单元来存储;二字节指令即在程序存储器中需要两个字节的单元来存储;三字节指令即在程序存储器中需要三个字节的单元来存储。 3.1.1  单字节指令 单字节指令格式由8位二进制编码表示。有两种形式: (1)	8位全表示操作码。例如,空操作指令NOP,其机器码为 (2)	8位编码中包含操作码和寄存器编码。例如:        MOV   A, Rn 这条指令的功能是把寄存器Rn(n=0,1,2,3,4,5,6,7)中的内容送到累加器A中去。其机器码为 	 假设n=0,则寄存器编码为Rn=000(参见指令表),指令MOV A,R0的机器码为E8H,其中操作码11101表示执行把寄存器中的数据传送到A中去的操作。000为R0寄存器编码。 3.1.2  双字节指令 双字节指令格式中,指令的编码由两个字节组成,该指令存放在存储器时需占用两个存储器单元。例如:       MOV  A,#DATA 这条指令的功能是将立即数DATA送到累加器A中去。假设立即数DATA=85H,则其机器码为 第一字节                                操作码                    第二字节                                操作数(立即数85H) 3.1.3  三字节指令 三字节指令格式中第一个字节为操作码,其后两个字节为操作数。例如:           MOV  direct,#DATA 这条指令是指立即数DATA送到地址为direct的单元中去。假设direct=78H,DATA=80H,则MOV  78H,#80H指令的机器码为  第一字节                                        操作码         第二字节                                        第一操作数(目的地址)          第三字节                                       第二操作数(立即数) 用二进制编码表示的机器语言指令由于不便阅读理解和记忆,因此在微机控制系统中采用汇编语言(用助记符和专门的语言规则表示指令的功能和特征)指令来编写程序。 一条汇编语言指令中最多包含4个区段,如下所示:          [标号:]  操作码助记符 [目的操作数] [,源操作数]  [;注释] 例如,把立即数F1送A的指令为      START :   MOV   A,#0F1H   ;  立即数0F1H→A 3.2  寻 址 方 式 所谓的寻址就是指寻找操作数的地址。由于大多数指令都需要操作数,因此在使用操作数的过程中就存在一个寻找存储单元的问题。 MCS-51指令系统的寻址方式有下列几种: ①	直接寻址。 ②	立即数寻址。 ③	寄存器寻址。 ④	寄存器间接寻址。 ⑤	变址寻址。 ⑥	位寻址。 ⑦	相对寻址。 3.2.1  直接寻址 在指令中含有操作数的直接地址,该地址指出了参与操作的数据所在的字节地址或位地址。 直接寻址方式中操作数存储的空间有以下3种:    (1)	内部数据存储器的低128B单元(00H~7FH)。例如:       MOV  A,70H     ;(70H)→A 指令功能是把内部RAM 80H单元中的内容送入累加器A。    (2)	位地址空间。例如:  MOV C,00H    ;直接位00H内容→进位位    (3)	功能寄存器。特殊功能寄存器只能用直接寻址方式进行访问。例如:   MOV IE,#76H   ;立即数76H→中断允许寄存器IE 立即数寻址方式是操作数包含在指令字节中,指令操作码后面字节的内容就是操作数本身。汇编指令中,在一个数的前面冠以“
                
原创力文档
                        

文档评论(0)