《单片机原理与实用技术》课程教学资源(PPT课件讲稿)第4章 汇编语言程序设计

第4章 汇编语言程序设计
第4章 汇编语言程序设计

4.1汇编语言程序的汇编 4.1.1程序设计语言简介 1机器语言 1110010100110000 0010010101000000 1111010101010000 2汇编语言 MOV A 30H ADD A, 40H MOV 50HA 3高级语言 FORTAN、BASC、C语等和过程的语言。如: 级语言是一种面向算氵
4.1 汇编语言程序的汇编 4.1.1 程序设计语言简介 1.机器语言 11100101 00110000 00100101 01000000 11110101 01010000 2.汇编语言 MOV A,30H ADD A,40H MOV 50H,A 3.高级语言 高级语言是一种面向算法和过程的语言。如: FORTAN、BASIC、C语言

4.1.2人工汇编 人工汇编就是根据指令表,将源程序由指令逐条翻译 成指令代码,并把这些代码以字节为单元从起始地址依次 排列成目标程序。 人工汇编分两步进行 第一步:确定各条指令(第一字节)的地址并翻译出各 条指令的机器码 第二步:将第一步未处理的标号进行代替,即求出标号 所代表的具体地址值或地址偏移量,形成代码
4.1.2 人工汇编 人工汇编就是根据指令表,将源程序由指令逐条翻译 成指令代码,并把这些代码以字节为单元从起始地址依次 排列成目标程序。 人工汇编分两步进行: 第一步:确定各条指令(第一字节)的地址并翻译出各 条指令的机器码。 第二步:将第一步未处理的标号进行代替,即求出标号 所代表的具体地址值或地址偏移量,形成代码

〔例4-1)将下列程序进行人工汇编 ORG 1000H START. SETB P DL MOV 30H #03H DLO. MOV 31H, #OFOH DLI: DJNZ 31H DLl DJNZ 30H DLO CPL P AJMP DI END
〔例4-1〕 将下列程序进行人工汇编 ORG 1000H START: SETB P1.1 DL: MOV 30H,#03H DLO:MOV 31H,#0F0H DL1: DJNZ 31H,DL1 DJNZ 30H,DLO CPL P1.1 AJMP DL END

表4-1第一步汇编结果 地址指令代码 标号助记符 ORG 1000H 1000HD291 START: SETB P 1002H753003 DL. MOV 30H #03H 1005H7531F0 DLO. MOV 31H #OFOH 1008H D5 31 rell DLI: DNZ 31H DLI 100BH D5 30 re12 DJNZ 30H DLO 100EHB291 CPL P 1010H AJMPDL AJMP DL END
地址 指令代码 标号 助记符 1000H D2 91 1002H 75 30 03 1005H 75 31 F0 1008H D5 31 100BH D5 30 100EH B2 91 1010H ORG 1000H START: SETB P1.1 DL: MOV 30H,#03H DL0: MOV 31H,#0F0H DL1: DJNZ 31H,DL1 DJNZ 30H,DLO CPL P1.1 AJMP DL END AJMPDL rel1 rel2 表4-1 第一步汇编结果

第二步:计算偏移量 (rel1=1008H-100BH=-3H 以补码表示:rel=0FDH ②rel2=1005H-100EH=9H 以补码表示:rel2=0F7H ③指令中 AJMP DL中D=1002H其低11为0000000,所 该指令的代码为:01H,02H 表4-2第二步汇编结果 地址 指令代码 标号助记符 ORG 1000H 1000H D291 START: SETB PLI 1002H 753003 DL. MOV 30H #03H 1005H 7531F0 DLO: MOV 31H #OFOH 1008H D5 31 FD DLI DJNZ 31H DLl 100BH D530F7 DJNZ 30H DLO 100EH B291 CPL PLL 1010H 0102 AJMP DL END
第二步:计算偏移量 ①rel1=1008H-100BH=-3H 以补码表示:rel=0FDH ②rel2=1005H-100EH=-9H 以补码表示:rel2=0F7H ③指令中AJMP DL中DL=1002H其低11为00000000010B,所 以该指令的代码为:01H,02H。 表4-2 第二步汇编结果 地址 指令代码 标号 助记符 1000H D2 91 1002H 75 30 03 1005H 75 31 F0 1008H D5 31 FD 100BH D5 30 F7 100EH B2 91 1010 H 01 02 ORG 1000H START: SETB P1.1 DL: MOV 30H,#03H DL0: MOV 31H,#0F0H DL1: DJNZ 31H,DL1 DJNZ 30H,DL0 CPL P1.1 AJMP DL END

4.1.3机器汇编 机器汇编是由计算机的汇编软件将汇编语言源程序自动 生成机器语言程序。汇编软件称汇编程序。 机器汇编可在单片机开发系统(如仿真器)上汇编软件 实现,称驻留汇编;也可在其它计算机(如PC机)上进 称交叉汇编
4.1.3 机器汇编 机器汇编是由计算机的汇编软件将汇编语言源程序自动 生成机器语言程序。汇编软件称汇编程序。 机器汇编可在单片机开发系统(如仿真器)上汇编软件 实现,称驻留汇编;也可在其它计算机(如PC机)上进行, 称交叉汇编

4.2汇编语言程序设计概述 4.21汇编语言语句格式 〔标号:〕<操作码助记符冮操作数;注释] 1标号 标号是语句地址的标志符号、代表该语句指令代码第 个字节的地址。 2操作码助记符 此为语句中唯一不可缸少的部分,也是语句的核心,表 示该语句进行何种操作。 3操作数 操作数是指令的操作对象。 4注释 注释是为方便程序的编写、理解、交流而书写的说明解 释性文字、符号
4.2 汇编语言程序设计概述 4.2.1 汇编语言语句格式 〔标号:〕[ 操作数][;注释] 1.标号 标号是语句地址的标志符号、代表该语句指令代码第一 个字节的地址。 2.操作码助记符 此为语句中唯一不可缸少的部分,也是语句的核心,表 示该语句进行何种操作。 3.操作数 操作数是指令的操作对象。 4.注释 注释是为方便程序的编写、理解、交流而书写的说明解 释性文字、符号

4.22伪指令 1汇编起始地址伪指令ORG( Origin) 格式:〔标号:〕ORG 功能:规定目标程序段式数据块的起始地址 说明:总放在源程序段的开头和数据块的开头 2汇编结束指令END 格式:[标号:〕END 功能:告诉汇编程序,源程序到此结果,汇编到此截止。 说明:一个程序只能有一条END命令,且位于程序的最后。汇 编程序对END语句以后的语句不进行汇编。 例如: ORG 2000H START: MOV A B INB ACC 7 DONE CPL A DONE MOV B.A END
4.2.2 伪指令 1.汇编起始地址伪指令ORG(Origin) 格式:〔标号:〕ORG 功能:规定目标程序段式数据块的起始地址。 说明:总放在源程序段的开头和数据块的开头 2.汇编结束指令END 格式:〔标号:〕END 功能:告诉汇编程序,源程序到此结果,汇编到此截止。 说明:一个程序只能有一条END命令,且位于程序的最后。汇 编程序对END语句以后的语句不进行汇编。 例如: ORG 2000H START:MOV A,B JNB ACC.7,DONE CPL A DONE:MOV B,A END

3字节定义伪指令 DEfine byte) 格式:〔标号:〕DB<字节数据 功能:从指定的地址单元开始,存入规定好的8位数(字节数 据) 说明:1)存贮地址单元可由前一条指令确定或由ORG命令 指定 2)当存贮多个数时,中间用 隔开 例如 ORG 8000H MOV A 40H TAB:DB40H,1101B,96… 表示从8002H单元开始分别存放40H,ODH,43H 例 ORG 1000H DB“ How are you” 则把字符串中的字符按ASCI码连续存放在1000H~100AH 个单元中(包括两个空格) 注意: DB OFA2H是非法的,因OFA2H不是字节数
格式:〔标号:〕DB 功能:从指定的地址单元开始,存入规定好的8位数(字节数 据)。 说明:1)存贮地址单元可由前一条指令确定或由ORG命令 指定; 2)当存贮多个数时,中间用“ , ”隔开。 例如: ORG 8000H MOV A, 40H TAB:DB 40H, 1101B, 96…… 表示从8002H单元开始分别存放40H,0DH,43H 例: ORG 1000H DB “How are you” 则把字符串中的字符按ASCII码连续存放在1000H~100AH 11 个单元中(包括两个空格)。 注意:DB 0FA2H 是非法的,因0FA2H不是字节数。 3.字节定义伪指令DB(Define Byte)
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《单片机原理与实用技术》课程教学资源(PPT课件讲稿)第3章 MCS-51指令系统.ppt
- 《单片机原理与实用技术》课程教学资源(PPT课件讲稿)第2章 单片机基本结构组成及工作原理.ppt
- 《单片机原理与实用技术》课程教学资源(PPT课件讲稿)第1章 单片机入门知识.ppt
- 《单片机原理与实用技术》课程教学资源(PPT课件讲稿)第10章 MCS-51单片机应用系统设计开发技术.ppt
- 山东大学:《Web技术导论》第4章 网页及多媒体制作 4.1使用FrontPage 2000 4.2 新建网页 4.3 网页的编辑 4.4框架网页 4.5 使用Dreamweaver.ppt
- 山东大学:《Web技术导论》第3章 HTML和XML基础.ppt
- 山东大学:《Web技术导论》第2章 Web服务器的架设和管理.ppt
- 山东大学:《Web技术导论》第1章 Web基础.ppt
- 山东大学:《Web技术导论》第4章 网页及多媒体制作 4.6 Photoshop和图像处理.ppt
- 万博科技职业学院:《Visual Basic程序设计》第十三章 访问数据库.ppt
- 万博科技职业学院:《Visual Basic程序设计》第十一章 图形与图象设计.ppt
- 万博科技职业学院:《Visual Basic程序设计》第十二章 文件处理.ppt
- 万博科技职业学院:《Visual Basic程序设计》第七章 数组.ppt
- 万博科技职业学院:《Visual Basic程序设计》第九章 对话框.ppt
- 万博科技职业学院:《Visual Basic程序设计》第六章 循环程序结构.ppt
- 万博科技职业学院:《Visual Basic程序设计》第八章 过程一子程序和函数.ppt
- 万博科技职业学院:《Visual Basic程序设计》第十章 菜单和工具栏.ppt
- 万博科技职业学院:《Visual Basic程序设计》第四章 程序的输入和输出.ppt
- 万博科技职业学院:《Visual Basic程序设计》第五章 选择结构设计.ppt
- 万博科技职业学院:《Visual Basic程序设计》第三章 BASIC语言基础.ppt
- 《单片机原理与实用技术》课程教学资源(PPT课件讲稿)第5章 并行接口.ppt
- 《单片机原理与实用技术》课程教学资源(PPT课件讲稿)第6章 中断系统.ppt
- 《单片机原理与实用技术》课程教学资源(PPT课件讲稿)第8章 串行接口.ppt
- 《单片机原理与实用技术》课程教学资源(PPT课件讲稿)第9章 单片机扩展与接口技术(9.1-9.4).ppt
- 《单片机原理与实用技术》课程教学资源(PPT课件讲稿)第9章章 单片机扩展与接口技术(9.5-9.6).ppt
- 《数据库技术与应用》课程教学资源(PPT课件讲稿)第4章 数据库系统的开发环境.ppt
- 《数据库技术与应用》课程教学资源(PPT课件讲稿)第5章 数据库系统的开发方法.ppt
- 《数据库技术与应用》课程教学资源(PPT课件讲稿)第6章 数据库系统的立项与调查.ppt
- 《数据库技术与应用》课程教学资源(PPT课件讲稿)第7章 数据库系统的需求建模.ppt
- 《数据库技术与应用》课程教学资源(PPT课件讲稿)第8章 数据库系统的概要设计.ppt
- 《数据库技术与应用》课程教学资源(PPT课件讲稿)第9章 数据库系统的详细设计.ppt
- 《数据库技术与应用》课程教学资源(PPT课件讲稿)第1章 数据库系统概述(宁可、吴菁、胡海).ppt
- 《数据库技术与应用》课程教学资源(PPT课件讲稿)第2章 SQL语言与关系数据理论.ppt
- 《数据库技术与应用》课程教学资源(PPT课件讲稿)第10章 数据库系统的实施与支持.ppt
- 《数据库技术与应用》课程教学资源(PPT课件讲稿)第11章 WEB数据库应用.ppt
- 《数据库技术与应用》课程教学资源(PPT课件讲稿)第12章 数据仓库与数据挖掘技术.ppt
- 《数据库技术与应用》课程教学资源(PPT课件讲稿)第3章 数据库系统体系结构.ppt
- 吉林师范大学:《汇编语言程序设计》课程电子教案(PPT课件讲稿)第1章 基础知识.ppt
- 吉林师范大学:《汇编语言程序设计》课程电子教案(PPT课件讲稿)第3章 宏汇编语言.ppt
- 吉林师范大学:《汇编语言程序设计》课程电子教案(PPT课件讲稿)目录.ppt