当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

机械工业出版社同名教材配套电子教案:《单片机原理及其应用》第三章 汇编语言程序设计(陈立周、陈宇编)

资源类别:文库,文档格式:PPT,文档页数:35,文件大小:1.13MB,团购合买
第一节 汇编语言程序的格式 第二节 伪指令 第三节 汇编语言程序的编写步骤及基本结构 第四节 程序设计举例
点击下载完整版文档(PPT)

第三章汇编语言程序设计 第一节汇编语言程序的格式 第二节伪指令 第三节汇编语言程序的编写步骤及基本 结构 第四节程序设计举例 Micro Controller unit

第三章 汇编语言程序设计 第一节 汇编语言程序的格式 第二节 伪指令 第三节 汇编语言程序的编写步骤及基本 结构 第四节 程序设计举例

本章要点 本章介绍汇编语言程序的书写格式 编写步骤以及程序的基本结构。通过 些具体范例,了解与掌握编程方法并从 中掌握程序设计的基本技巧

本章要点 • 本章介绍 汇编语言程序的书写格式、 编写步骤以及程序的基本结构。通过一 些具体范例,了解与掌握编程方法并从 中掌握程序设计的基本技巧

第一节汇编语言程序的格式 汇编语言编写的程序由语句组成,每一语句占一行填写 条指令。每行分4段,分别为标号、操作码、操作数和注释 ORG 2000H ADDR: MOV A.OOH 累加器清零 MOV 4IHA 41H、42H清零 标号:代表该行指 MOV 42H.A 令所在的地址,结 尾应加一冒号 MOV R2 OAH 设定累加次数 MOV R1.30H 设定数据首地址 LOOP: MOV AaRI 取数 ADD A41H 累加到41H JNC NEXT 是否有进位 INC 42H 有进位42H加1 NEXT:,MOV 41HA 将和存入41H 操作码:助记符或 INC R1 注释:对语句 伪指令的符号。 DNZR2LOOP操作数:操作所需的说明,也可 要的数据或数据的 不加注释 返回本章首页 LJMP S 存储位置来源 END

第一节 汇编语言程序的格式 汇编语言编写的程序由语句组成,每一语句占一行填写一 条指令。每行分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)::指明汇编起始点地址 2END:指明源程序至此结束。 3EQU(Epua):赋值伪指令,可对地址标号进行赋值。 4DB( Define byte):定义从指定标号地址开始所存放的字节 数据,多字节时各字节间用逗号隔开。 5Dw( Define word):定义从指定的标号地址开始,所存放 的字数据。跟DB一样,输入几个字时各字间要用逗号隔开 6DS( Define storage):定义存储区,表示从标号所指的存 储单元开始,保留的内存单元数量,以供程序使用 返回本章首页

第二节 伪指令 伪指令不执行任何操作,汇编时也不生成目标程序。它仅 仅提供对汇编的要求。汇编成机器语言后,伪指令就不存在 了。以下为常用的伪指令: 1.ORG(Origin)::指明汇编起始点地址。 2.END:指明源程序至此结束。 3.EQU(Epual):赋值伪指令,可对地址标号进行赋值。 4.DB(Define Byte):定义从指定标号地址开始所存放的字节 数据,多字节时各字节间用逗号隔开。 5.DW(Define Word):定义从指定的标号地址开始,所存放 的字数据。跟DB一样,输入几个字时各字间要用逗号隔开。 6.DS(Define Storage) :定义存储区,表示从标号所指的存 储单元开始,保留的内存单元数量,以供程序使用。 返回本章首页

第三节汇编语言程序的编写步骤 及基本结构 顺序结构:「指令1 顺序结构是指程 序按指令顺序逐条 指令2 执行的一种结构。 也是程序结构中最 指令3 简单的一种结构

第三节 汇编语言程序的编写步骤 及基本结构 一、顺序结构: 顺序结构是指程 序按指令顺序逐条 执行的一种结构。 也是程序结构中最 简单的一种结构

二、分支结构 指程序中具有转移指令,可根据转移 条件决定是转移还是继续执行下一条指 令 Z=1? Z=0 转分支 Z=1? PV=1? C=0? 转分支2 转分支1 C=0? 转分支2 转分支4 转分支3转分支2 转分支1 转分支3 转分支4 几种分支结构程序的框图

二、分支结构: 指程序中具有转移指令,可根据转移 条件决定是转移还是继续执行下一条指 令。 几种分支结构程序的框图

三、循环结构 循环结构由四个环节组成 1.初始化部分:对循环体中参加操作的有关 参数、地址等赋以初始值,并指定循环结束条 件 2循环体部分:指每次循环都需要重复执行 的程序段 3修改初始值:每次循环结束都要对初始值 进行修改,特别是判断结束条件的参数,每经 次循环后都要作相应的修改,以便决定是否 结束循环 4结束判断部分:检查结束条件是否满足 若条件满足停止循环,否则返回继续执行循环 体

三、循环结构 循环结构由四个环节组成。 1.初始化部分:对循环体中参加操作的有关 参数、地址等赋以初始值,并指定循环结束条 件。 2.循环体部分:指每次循环都需要重复执行 的程序段。 3.修改初始值:每次循环结束都要对初始值 进行修改,特别是判断结束条件的参数,每经 一次循环后都要作相应的修改,以便决定是否 结束循环。 4.结束判断部分:检查结束条件是否满足, 若条件满足停止循环,否则返回继续执行循环 体

循环结构框性图 入口 入口 图中每执行一次循环 初始化 体后,都要检查结束条 初始化 件是否满足,若条件满 循环体 修改初值 足停止循环,否则返回 修改初值 继续执行循环体 循环体 右边两图区别是先检 循环 结束否? 循环 查循环是否结束后修改 结束否? 初值,还是先修改初值 Y 后检查循环是否结束 出口) 出口

循环结构框图 图中每执行一次循环 体后,都要检查结束条 件是否满足,若条件满 足停止循环,否则返回 继续执行循环体。 右边两图区别是先检 查循环是否结束后修改 初值,还是先修改初值 后检查循环是否结束

顺灰序结构的程序举例 例3-1将地址为2000H、2001H、2002H的片外数据存储单元的内容, 分别传送到2002H、203H、2004H存储单元中去 ORG O000H JMP 1000H ORG 1000H Mov DPTR #2002H MOVX A,@DPTR MOV DPTR, #2004H MOVX @DPTR. A MOVX ODPTRA MOV DPTR, #2001H MoV DPTR #2000 MOVX A@DPTR MOVX A, @DPTR MOv DPTR #2003H MOV DPTR.#2002H MOVX ODPTR A SJMP S

顺序结构的程序举例 例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存储单元,运算符号的 ASCI码存于40H单元,编写一根据40H的符号,对甲乙两数 进行相应运算的程序;井将运算结果存于43H单元。 ORG 0000H LJMP 0100H ORG 0100 Mov A 40H CJNE A,#2BH, MINUS MINUS: CJNE A,#2DH, ERR PLUS: MOV A 41H CLR C ADd A 42H MOV A 41H MOV 43H. A SUBB A 42H SJMP CLOSE MOV 43H. A SJMP CLOSE ER: Mov 43H #OFFH CLOSE: SMP S

分支结构的程序举例 例3-2 有甲乙两数存于41H和42H存储单元,运算符号的 ASCII码存于40H单元,编写一根据40H的符号,对甲乙两数 进行相应运算的程序;井将运算结果存于43H单元。 ORG 0000H LJMP 0100H ORG 0100 MOV A,40H CJNE A,#2BH,MINUS PLUS: MOV A,41H ADD A,42H MOV 43H,A SJMP CLOSE MINUS:CJNE A,#2DH,ERR CLR C MOV A,41H SUBB A,42H MOV 43H,A SJMP CLOSE ERR: MOV 43H,#0FFH CLOSE:SJMP $

点击下载完整版文档(PPT)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
共35页,可试读12页,点击继续阅读 ↓↓
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有