3.mcs-51单片机指令系统及汇编语言程序设计.ppt

3.mcs-51单片机指令系统及汇编语言程序设计.ppt

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

第3章 MCS-51单片机指令系统与汇编语言程序设计 3.1 指令系统概述 3.1.1 指令 指令是指挥计算机工作的命令。一种计算机所能执行的指令集合称之为计算机指令系统。 MCS-51单片机主要有两种指令形式: 机器语言指令 汇编语言指令。 一、机器语言指令 用二进制代码表示的指令称为机器语言指令,也称机器码。 例如:“累加器A加1”指令用二进制数表示时,是,在程序存储器中占用一个字节单元。 3.1.2 8051汇编语言指令 一、指令组成: 操作码助记符 操作数 1.标号 标号是语句地址的标志符号,代表该语句指令代码第一个字节的地址。 (1)标号由1~8个ASCII字符组成,且第一个字符必须是字母,其余字符可以是字母、数字或其他特定字符。 (2)不能使用该汇编语言已经定义了的符号作为标号。如指令助记符、寄存器符号名称等。 (3)标号后必须跟冒号。 2.操作码 操作码用于规定语句执行的操作。它是汇编语句中唯一不能空缺的部分,也是语句的核心,它用指令助记符表示。 3.操作数 操作数用于给指令的操作提供数据或地址。在一条汇编语句中操作数可能是空缺的,也可能包括一项,还可能包括两项或三项。当有多个操作数时,各操作数间以逗号分隔。 (1)工作寄存器名。 (2)特殊功能寄存器名。 (3)标号名。 (4)常数。 (5)符号“$”,表示程序计数器PC的当前值。 (6)表达式。 三、 指令中的常用符号 Rn(n=0~7):表示当前工作寄存器R0~R7中的任一个寄存器。 Ri(i=0或1):表示通用寄存器组中用于间接寻址的两个寄存器R0, R1。 #data: 表示8位直接参与操作的立即数。 #data16:表示16位直接参与操作的立即数。 direct:表示片内RAM的8位单元地址。 addr11:表示11位目的地址,主要用于ACALL和AJMP指令中。 addr16:表示16位目的地址,主要用于LCALL和LJMP指令中。 rel:用补码形式表示的8位二进制地址偏移量,取值范围为?128~+127,主要用于相对转移指令,以形成转移的目的地址。 DPTR:数据指针,用于寄存器间接寻址方式和变址寻址方式。 bit:表示片内RAM位寻址区或者是可以位寻址的SFR的位地址。 A(或ACC)、 B :表示累加器、 B寄存器。 C:表示PSW中的进位标志位Cy。 @:在间接寻址方式中,表示间接寻址寄存器指针的前缀标志。 $:表示当前的指令地址。 /:位操作数的前缀,表示对该位取反。 (X): 表示由X所指定的某寄存器或某单元中的内容。 ((X)):表示由X间接寻址单元中的内容。 ←:表示指令的操作结果是将箭头右边的内容传送到左边。 →:表示指令的操作结果是将箭头左边的内容传送到右边。 ∨、 ∧、 ⊕ :表示逻辑或、与、异或。 =:表示数据交换。 3.1.3 MCS-51单片机指令系统的分类(111条) 一、 按指令所占存储器字节数分: (1) 单字节指令(49条) (2) 双字节指令(46条) (3) 三字节指令(16条) 3.2 MCS-51单片机的寻址方式 寻址方式:在计算机中,说明操作数所在地址的方法称为操作数的寻址方式。 计算机执行程序实际上是在不断寻找操作数并进行操作的过程。 每种计算机在设计时已决定了它具有哪些寻址方式,寻址方式越多,计算机的灵活性越强,指令系统也就越复杂。 MCS-51单片机的指令系统提供了7种寻址方式,分别为立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、变址寻址、相对寻址和位寻址。一条指令可能含多种寻址方式。 寻址方式 1.立即寻址 定义:将立即参与操作的数据直接写在指令中,这种寻址方式称为立即寻址。 特点:指令中直接含有所需的操作数。该操作数可以是8位的,也可以是16位的,常常处在指令的第二字节和第三字节的位置上。立即数通常使用#data或#data16表示,在立即数前面加“#”标志,用以和直接寻址中的直接地址(direc或bit)相区别。 这类指令大都是双字节指令,仅有指令:MOV DPTR,#DATA16是三字节指令,它提供两字节立即数,如:MOV DRTR,#1600H,它的机器指令格式下所示: 1 0 0 1 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0 0 0 使用专用的汇编程序把编写的汇编语言源程序汇编成机器语言程序,对立即数的书写一般有要求:对于单字节立

文档评论(0)

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

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

1亿VIP精品文档

相关文档