8051单片机__第三章__汇编语言程序设计.ppt

8051单片机__第三章__汇编语言程序设计.ppt

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 汇编语言程序设计 第一节 汇编语言程序的格式 第二节 伪指令 第三节?汇编语言程序的编写步骤及基本 结构 第四节 程序设计举例 本章要点 本章介绍?汇编语言程序的书写格式、编写步骤以及程序的基本结构。通过一些具体范例,了解与掌握编程方法并从中掌握程序设计的基本技巧。 第一节 汇编语言程序的格式 汇编语言编写的程序由语句组成,每一语句占一行填写一条指令。每行分4段,分别为标号、操作码、操作数和注释。 ORG 2000H ADDR: MOV A,00H ;累加器清零 MOV 41H,A ;41H、42H清零 MOV 42H,A MOV R2,0AH ;设定累加次数 MOV R1,30H ;设定数据首地址 LOOP:MOV A,@R1 ;取数 ADD A,41H ;累加到41H JNC NEXT ;是否有进位 INC 42H ;有进位42H加1 NEXT: MOV 41H,A ;将和存入41H INC R1 DJNZ R2,LOOP LJMP $ END 标号:代表该行指 令所在的地址,结 尾应加一冒号 操作码:助记符或伪指令的符号。 操作数:操作所需要的数据或数据的存储位置来源 注释:对语句的说明,也可不加注释 返回本章首页 第二节 伪指令 伪指令不执行任何操作,汇编时也不生成目标程序。它仅仅提供对汇编的要求。汇编成机器语言后,伪指令就不存在了。以下为常用的伪指令: 1.ORG(Origin)::指明汇编起始点地址。 2.END:指明源程序至此结束。 3.EQU(Epual):赋值伪指令,可对地址标号进行赋值。 4.DB(Define Byte):定义从指定标号地址开始所存放的字节数据,多字节时各字节间用逗号隔开。 5.DW(Define Word):定义从指定的标号地址开始,所存放的字数据。跟DB一样,输入几个字时各字间要用逗号隔开。 6.DS(Define Storage) :定义存储区,表示从标号所指的存储单元开始,保留的内存单元数量,以供程序使用。 返回本章首页 第三节? 汇编语言程序的编写步骤 及基本结构 一、顺序结构: 顺序结构是指程序按指令顺序逐条执行的一种结构。也是程序结构中最简单的一种结构。 二、分支结构: 指程序中具有转移指令,可根据转移条件决定是转移还是继续执行下一条指令。 几种分支结构程序的框图 三、循环结构 循环结构由四个环节组成。 1.初始化部分:对循环体中参加操作的有关参数、地址等赋以初始值,并指定循环结束条件。 2.循环体部分:指每次循环都需要重复执行的程序段。 3.修改初始值:每次循环结束都要对初始值进行修改,特别是判断结束条件的参数,每经一次循环后都要作相应的修改,以便决定是否结束循环。 4.结束判断部分:检查结束条件是否满足,若条件满足停止循环,否则返回继续执行循环体。 循环结构框图 图中每执行一次循环体后,都要检查结束条件是否满足,若条件满足停止循环,否则返回继续执行循环体。 右边两图区别是先检查循环是否结束后修改初值,还是先修改初值后检查循环是否结束。 顺序结构的程序举例 例3-1 将地址为2000H 、2001H、2002H的片外数据存储单元的内容,分别传送到2002H、2003H、2004H存储单元中去。 ORG 0000H LJMP 1000H ORG 1000H MOV DPTR,#2002H MOVX A,@DPTR MOV DPTR,#2004H MOVX @DPTR,A MOV DPTR,#2001H MOVX A,@DPTR MOV DPTR,#2003H MOVX @DPTR,A MOV DPTR,#2000H MOVX A,@DPTR MOV DPTR,#2002H MOVX @DPTR,A SJMP $ 分支结构的程序举例 例3-2 有甲乙两数存于41H和42H存储单元,运算符号的ASCII码存于40H单元,编写一根据40H的符号,对甲乙两数进行相应运算的程序;井将运算结果存于43H单元。 ORG 0000H LJMP 0100H ORG 0100 MOV A,40H CJNE A,#2BH,MI

文档评论(0)

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

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

1亿VIP精品文档

相关文档