单片机原理及应用-第二章.pptxVIP

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二章 MCS-96(8098)指令系统;汇编语言格式 MAIN: ADD AX , BX, CX ;主程序 (2080H 44H CX BX AX) 标号:操作码 操作数1,操作数2,操作数3 ;注释 标号:指令的符号地址,通常是程序的分支指令前或子程序的第一条指令前面要加标号。标号必须顶格书写,标号长度一般为8个以内的字符或数字,但第一个字符必须为英文字母。标号以冒号结束。 操作码:指令的助记符,表示一条指令的操作功能 操作数:操作码(指令)要求操作的数据(地址值或数据值) 源操作数:参与操作的数据(地址或数据),其值在指令操作前后不发生变化 目的操作数:指令执行后数据存放的地址(存放指令的操作结果),操作后其地址内容通常要发生变化。 例:ADD AX,BX AX:目的操作数;BX:源操作数 注释:编程人员对指令或程序编制所作的说明,不能转换为机器语言。 ;二.伪指令: 提供给编译程序使用的指令。对用户所编制的应用程序而言不产生任何影响(不生成目标程序,不影响程序的运行) ORG:定义程序起始地址 ORG 2080H EQU:赋值伪指令 AX EQU 20H DB:定义数据字节 DB 20h,21h,22h,23h,24h,25h,26h,27h DW:定义数据字 DW 2000h,2001h,2002h,2003h,2004h,2005h,2006h,2007h END:编译结束;§2.2操作数类型及定位规则 一.无符号操作数 ;负数采用补码形式表示,便于将减法运算转换为加法运算 例:64H-10H [ 100-16=84 (54H)] =64H+(-10H)补 =64H+F0H =1 54H 高位:1 为借位位,够减,借位C=1 求补运算:模减求补数据,8位数据,模=100H (-10H)补=100H-10H=F0H 三.位型数据(bit) 位型数据: 0,1 两种状态 在8098(80C196)单片机指令系统中,逻辑操作指令,位测试指令用到位型数据。 例:JBS 20H,7,Addr;§2.3操作数寻址 寻址:寻找操作数据的真实地址。 寻址方式的判断:以源操作数的寻址方式作为一条指令寻址方式的判断依据。 8098(80C196)包含有6种基本寻址方式(衍生8种寻址方式) 一.寄存器直接寻址 操作数据直接放在片内寄存器中,指令中的操作数为寄存器地址(注意:存放数据的寄存器地址必须符合操作数定位规则。) 例:ADD AX,BX,CX 16位操作指令,AX,BX,CX的低位地址必须定义为偶数。 二.间接寻址 需要操作的数据的地址存放在某寄存器中,而操作数据则存放在64K存储空间的任一地址单元中。通过这种方式寻找片外存储单元。存放地址的寄存器称为间址寄存器。 例:ADD AX,[BX];三.自动增量寻址 指令在完成间接寻址后,间址寄存器的地址值自动增量 ADD AX,[BX]+ 16位操作,自动增2 ADDB AX,[BX]+ 8位操作,自动增1 例:编程将从5000H地址单元开始的100个16位数据转存到6000H地址单元开始的存储器中。(数据块的传送) LD AX,#5000H LD BX,#6000H LDB CL,#100 LOOP:LD DX,[AX]+ ST DX.[BX] DJNZ CL,LOOP RET 四.立即寻址 操作数为指令的一部分,直接参与指令的操作。一条指令中只能有一个操作数采用立即寻址操作。作为立即寻址的操作数前面必须加#号。操作数的最高位为A~F值,在A~F值前面要填加0值。 LD AX,#5000H ; LD AX,#0AF50H;五.短变址寻址 在指令的一个源操作数(间址寄存器)中,存放一个16位的基地址,而一个8位的符号数作为偏移地址,两者的代数和为操作数的有效地址。(寻址空间范围为基地址上127个地址单元,下128个地址单元) LD AX,12H[BX] ;(BX)+12H→操作数实际地址 LD AX,80H[BX] ;(BX)-128→操作数实际地址 六.长变址寻址 在指令的一个源操作数(间址寄存器)中,存放一个16位的基地址,而一个16位的无符号数作

文档评论(0)

131****9843 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档