单片机原理 第2章--指令系统.ppt

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机原理 第2章--指令系统

* 第二章 指令系统 第二章、指令系统 2.1 指令格式及常用符号 2.2 寻址方式 2.3 指令系统 2.4 伪指令 2.5 程序设计方法 2.1 指令格式及常用符号 计算机程序设计语言可分为三种:机器语言、汇编语言、高级语言 。 一、汇编语言指令格式 下面举一个例子来说明指令格式,例如,将数30H送到累加器A的指令如下: LOOP: MOV A, #30H ;30H→A [标号:] 操作码 [目的操作数][,源源操作数] [;注释] 标号——是由用户定义的符号组成,标号可有可无,若一条指令中有标号, 标号代表该指令所存放存储单元的地址,故标号又称为符号地址。 助记符——表示指令的操作功能,不能缺省。如上面指令的助记符为MOV, 表示这条指令的功能为数据传送。 操作数——是指令要操作的对象。根据指令的不同功能,操作数的个数可以有0~3个。 注释——对指令作简要的功能说明。加入注释主要为了便于阅读理解,可有可无。 二、指令中常用符号说明 Rn——当前选定的工作寄存器组中的寄存器R0~R7之一,n=0~7。 Ri——当前选定的工作寄存器组中的2个寄存器R0、R1,i=0、1。 #data——8位立即数。 #data16—16位立即数。 Direct——8位内部RAM单元的地址,它可以是一个内部数据区RAM单元 (00H~7FH)或特殊功能寄存器SFR地址(可用SFR符号名称表示)。 addr16——16位目的地址,用于LJMP、LCALL指令中。 addr11——11位目的地址,用于AJMP、ACALL指令。 Rel——带符号的8位地址偏移量,其值在-128~+127范围内, 用于SJMP和所有条件转移指令中。 Bit——内部RAM位地址、特殊功能寄存器中的位地址(可用位符号名称表示)。 @——间接寄存器的前缀,如@Ri,@DPTR。 /——位操作的前缀,表示对该位取反 回目录 2.2 寻址方式 寻址方式就是寻找操作数地址的方式。MCS-51单片机共有7种寻址方式: 立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、变址寻址、位寻址、相对寻址 一、立即寻址 指令中直接给出操作数的寻址方式称为立即寻址 例如: MOV A,#30H ;A?30H,8位 二、直接寻址 指令中直接给出操作数地址的寻址方式称为直接寻址 例如: MOV A,30H ;A?(30H) 50H XX XX … … 31H 30H 2FH 内部RAM 50H A 该指令执行后A=(30H)=50H 三、寄存器寻址 由指令指出某一个寄存器中的内容作为操作数,这种寻址方式称为寄存器寻址 例如:? MOV A,R1 ;A?R1。 R1 60H 60H A 该指令执行后A = R1 = 60H 四、寄存器间接寻址 寄存器间接寻址是把指令中指定的寄存器的内容作为操作数的地址, 然后将该地址存放的内容作为操作数 例如: MOV A, @R1 ;A ? (R1) R1 60H 3BH XX XX … … 61H 60H 5FH 内部RAM 3BH A 五、变址寻址 变址寻址是以一个基地址加上一个地址偏移量形成操作数地址的寻址方式。 在这种寻址方式中,DPTR或PC作为基址寄存器,累加器A作为偏移量寄存器 例如: MOVC A,@A + DPTR ;A ? (A+DPTR) 指令功能:首先将寄存器DPTR的内容与累加器A的内容进行相加, 两者之和作为程序存储器地址,然后将该地址单元的内容传送到累加器A中, 指令执行后DPTR的内容不变,但累加器A原来的内容被破坏 。 六、位寻址 对位地址中的内容进行操作的寻址方式称为位寻址 例如 SETB TR0 ;TR0?1 ?CLR 00H ;(00H)?0 七、相对寻址 相对寻址以程序计数器PC的当前值作为基地址,与指令中给出的相对偏移量rel进行 相加,把所得之和作为程序的转移地址。这种寻址方式用于相对转移指令中。 例如: ???????? JZ LOOP ???????? DJNE R0,DISPLAY 2.3 指令系统 MCS-51单片机指令系统共有111条指令。按指令的功能, MCS-51指令系统可分为下列5类: (1)数据传送类指令(29条) (2)算术运算类指令(24条) (3)逻辑运算类指令(24条) (4)控制转移类指令

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档