ImageVerifierCode 换一换
格式:PPT , 页数:24 ,大小:1.01MB ,
资源ID:8220513      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-8220513.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第5讲单片机指令系统1.ppt)为本站会员(11xg27ws)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

第5讲单片机指令系统1.ppt

1、第5讲(2011-04-21) 10-11第2学期第8周,汽车单片机,1.总体结构:(各部分的功能、协调关系) 2.引脚功能:(引脚的数目、信号特点) 3.CPU: (如何找到并运行程序) 4.存储器的结构: (位、地址、空间大小) 5.复位操作和复位电路: (复位后单片机的状态) 6.时钟时序: (时钟电路、如何理解程序的运行时间),复习:第2章 MCS-51单片机硬件结构,1.指令系统简介; 2.寻址方式; 3.指令系统; 4.汇编语言程序设计; 5.程序设计实例;,第3章 MCS-51指令系统及汇编语言,MCS-51的基本指令共111条,按指令所占的字节来分:(1) 单字节指令49条;(

2、2) 双字节指令45条;(3) 三字节指令17条。 按指令的执行时间来分:(1) 1个机器周期(12个时钟振荡周期)指令64条(2) 2个机器周期(24个时钟振荡周期)指令45条(3) 只有乘、除两条指令的执行时间为4个机器周期(48个时钟振荡周期)。,3.1 指令系统概述,注:12MHz晶振:机器周期为1s。,1. 指令格式 指令格式指令的表达方式称为指令格式标号: 操作码 目的操作数 ,源操作数 ;注释 标号:指令的符号地址。标号是用户设定的符号,表示该语句所在的地址。标号必须由以字母开头的l8个 ASCll字符组成,这些字符不能使用在该汇编语言中已经定义过了的符号。 操作码:操作码是由英

3、文缩写组成的字符串,它规定了指令的操作功能,是指令格式中唯一不能空缺的部分。,1. 指令格式 标号: 操作码 目的操作数 ,源操作数 ;注释 操作数:操作数用于给指令的操作提供数据或地址。操作数可以是空白也可能只有一项或二项,还可以有三项。各操作数之间必须用逗号分隔,操作数与操作码之间须用空格分隔。在两个操作数的指令中,把左边的操作数称为目的操作数,而右边操作数称之为源操作数。 注释:注释是对语句或程序段功能的说明。注释要用分号“;”开头,注释的长度不限,但每行开头仍须使用分号“;”,注释也可空缺。,2. 指令分类(见附录A,P236) 有单字节指令、双字节指令、三字节不同长度的指令,格式不同

4、:(1)单字节指令:指令只有一个字节,操作码和操作数同在一个字节中。 (2)双字节指令:一个字节为操作码,另一个字节是操作数。(3)三字节指令:操作码占一个字节,操作数占二个字节。其中操作数既可能是数据,也可能是地址。,2. 指令分类 按功能分有五大类指令,共111条: (1)数据传送类(28条) :RAM、ROM、堆栈,传送、交换数据。 (2)算术运算类(24条) :字节。其中操作数既可能是数据,也可能是地址。加、减、乘、除,自加(减)1; (3)逻辑运算类(25条) :与、或、异或、移位。 (4)控制转移类(17条) :(无)条件转移、空操作。 (5)布尔变量操作类(17条) :位数据传送

5、、与、或、转移。,指令中常用符号Rn(n=07)当前工作寄存器组 R0R7;Ri(i=0,l)当前工作寄存器组的R0或R1;ACC代表累加器A的直接地址EOH;间接寻方式中间址寄存器标志符号;data8位立即数;(#XXH)datal616位立即数; (#XXXXH)direct8位片内RAM单元(包括SFR的地址或符号)的直接地址;addr1111位目的地址;,addr1616位目的地址,只限于在LCALL和LJMP指令中使用; Rel8位带符号补码数; Bit片内RAM或SFR中的直接寻址位; C代表PSW中的进位标志位,称为累加位; 加在位地址前面,表示对该位的状态取反; (X)表示寄存

6、器X或单元X中的数据; (X)表示将寄存器X或X存储单元的数作为地址的这个地址单元中的数据。$当前指令的首地址; 箭头右边的内容被箭头左边的内容所取代。,寻址方式就是在指令中说明(寻找、获得)操作数所在地址的方法。 共7种寻址方式。1立即寻址方式所谓立即寻址就是操作数在指令中直接给出。立即寻址方式的操作数称立即数,立即数只能是源操作数,不能作为目的操作数。立即数有8位立即数和16位立即数。使用时在立即数前加“#”标志。MOV A,#26H ; A 26H MOV DPTR,#2000H ; DPTR 2000H,3.2 指令系统的寻址方式,2直接寻址方式 操作数直接以单元地址的形式给出:MOV

7、 A,20H ; A (20H )寻址范围:(1) 内部RAM的低128个单元;(2) 特殊功能寄存器。除了以单元地址的形式外,还可用寄存器符号的形式给出。例如:MOV A,80H 与 MOV A,P0是等价的。,3寄存器寻址方式操作数在寄存器中 MOV A,Rn ;(Rn)A,n=07 表示把寄存器Rn的内容传送给累加器A 寻址范围包括: (1)4组通用工作寄存区共32个工作寄存器。 (2)部分特殊功能寄存器,例如A、B 以及数据指针寄存器DPTR等。,4. 寄存器间接寻址方式 寄存器中存放的是操作数的地址在寄存器的名称前面加前缀标志“” 访问内部RAM或外部数据存储器的低256个字节时,只

8、能采用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)作间址寄存器,4. 寄存器间接寻址方式,MOV A,Ri MOVX A,DPTR 例如:(R1)80H、(80H)=33H,则执行指令MOV A,Ri后,累加器A的内容为33H而不是80H

9、。,P48实例,5 基址加变址寻址方式,基址加变址寻址就是以DPTR或PC为基址寄存器,以A为变址寄存器,以两者内容相加形成16位地址作为操作数地址。例如指令: MOVC A,A+DPTR,5 基址加变址寻址方式,例如:MOVC A, A+DPTR 设(A)=10H,(DPTR)=1000H,程序存储器的(1010H)=45H,则上面程序语句的功能是将A的内容与DPTR的内容相加形成操作数地址(1010H),把该地址中的数据传送到累加器A。即(A)(A)+(DPTR)。结果: (A)=45H。,MOVC A,A+DPTR的执行示意图,说明: (1)本寻址方式是专门针对程序存储器的寻址方式,寻址

10、范围可达到64KB。 (2)本寻址方式的指令只有3条:MOVC A,A+DPTRMOVC A,A+PCJMP A+DPTR,参考P48,例子,6相对寻址方式 在相对寻址的转移指令中,给出了地址偏移量,以“rel”表示,即把PC的当前值加上偏移量就构成了程序转移的目的地址: 目的地址=转移指令所在的地址 + 转移指令的字节数 + rel 偏移量rel是一带符号的8位二进制数补码数 。 范围是:128 +127 向地址增加方向最大可转移(127+转移指令字节)个单元地址,向地址减少方向最大可转移(128-转移指令字节)个单元地址。,参考P49,例子,7位寻址方式 MCS-51有位处理功能,可以对数

11、据位进行操作,例如: MOV C,40H 是把位40H的值送到进位位C。 寻址范围包括: (1)内部RAM中的位寻址区。位有两种表示方法,例如,40H;另一种是单元地址加上位,例如,(28H).0,指的是28H单元中的最低位。它们是等价的。 (2)特殊功能寄存器中的可寻址位,可寻址位在指令中有如下4种的表示方法:a. 直接使用位地址。例如PSW.5的位地址为0D5H。 b.位名称的表示方法。例如:PSW.5是F0标志位,可使用F0表示该位。 c.单元地址加位数的表示方法。例如 :(0D0H).5。 d.特殊功能寄存器符号加位数的表示方法。例如:PSW.5。, MOV 2FH,#40H MOV A,R0 MOV DPTR,#2020H MOV 45H,P0 MOV A,R1 MOVC A,A+PC JC LOOP, 立即寻址, 寄存器间接寻址, 16位立即寻址, 直接寻址。 寄存器寻址。 基址加变址寻址, 相对寻址。,练 习-说出下列指令寻址方式,判断下列指令是否正确,若不正确请指出错误:MOV A,DPTRMOV DPTR,#03HMOV #80H,R7MOV B,C,不正确。A是8位寄存器,DPTR为16位寄存器,不匹配。正确。不正确。#80H为立即数,不能作为目的地址。不正确。B为8位字节寄存器,C为1位位累加器,不匹配。,练 习,

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报