山东大学:《微机原理及单片机接口技术》课程教学资源(PPT课件讲稿)第四章 指令系统及汇编语言程序设计(4.9-4.11)

第四章指令系統及汇编语言程序设计 本章学习目标 ◇了解助记符、指令格式 ◇掌握单片机寻址方式 ◇掌握单片机指令系统 ◇掌握单片机汇编语言程序设计及开发环境 ◇参考资料:keiμ Visionz件的帮助文件
7:59:36 第四章 指令系统及汇编语言程序设计 本章学习目标 了解助记符、指令格式 掌握单片机寻址方式 掌握单片机指令系统 掌握单片机汇编语言程序设计及开发环境 参考资料: keil μVision软件的帮助文件 3 04:34:02

第四拿指令系统及汇编语言程序设计语合( 4.1编程语言 42指令格式及其分类 43寻址方式 44数据传送类指令 45逻辑操作类指令 46算术运算类指令 47位操作指令 48控制类转移指令 49汇编语言程序设计 410汇编语言程序调试 411利用SP工具将程序下载到单片机中验证程序
7:59:36 第四章 指令系统及汇编语言程序设计语言 4.1 编程语言 4.2 指令格式及其分类 4.3 寻址方式 4.4 数据传送类指令 4.5 逻辑操作类指令 4.6 算术运算类指令 4.7 位操作指令 4.8 控制类转移指令 4.9 汇编语言程序设计 4.10 汇编语言程序调试 4.11利用ISP工具将程序下载到单片机中验证程序 4 04:34:02

§49汇编语言程序设计 49.1伪指令( Pseudo- Instruction) ◇用户将编辑好的汇编语言源程序通过专门的软件(称为 汇编程序)汇编成相应的机器语言程序时,需要有一些 专门的说明性语句。 ◇例如,指定目标程序或数据存放的起始地址、给一些指 定的标号赋值、在内存中予留工作单元、表示源程序结 束等指令。 ◇指令并不产生对应CPU操作的机器码,故称伪指令,也叫 指示性语句 Directives);相对应的,可产生实质性操作的 指令叫指令性语句( (Instructions,指令性语句表示CPU 要进行的某种操作。 ◇例,MOVA,#30H,表示将立即数30送到寄存器A中
7:59:36 §4.9 汇编语言程序设计 4.9.1 伪指令(Pseudo- Instruction) 用户将编辑好的汇编语言源程序通过专门的软件(称为 汇编程序)汇编成相应的机器语言程序时,需要有一些 专门的说明性语句。 例如,指定目标程序或数据存放的起始地址、给一些指 定的标号赋值、在内存中予留工作单元、表示源程序结 束等指令。 指令并不产生对应CPU操作的机器码, 故称伪指令, 也叫 指示性语句(Directives); 相对应的,可产生实质性操作的 指令叫指令性语句(Instructions), 指令性语句表示CPU 要进行的某种操作。 例, MOV A, #30H, 表示将立即数30H送到寄存器A中。 5 04:34:02

49.1伪指令 1、起始地址设置伪指令ORG(ORIGⅠN) 格式为: ORG XXXXH ORG是起始地址设置伪指令的操作码,xxx是四位 十六进制地址。该指令表明其后紧跟的指令性语句 的机器码放在以xXx为起始地址的单元中。 例: ORG 0100H DELAY: MOV RO.#30H
7:59:36 4.9.1 伪指令 1、起始地址设置伪指令ORG(ORIGIN) 格式为: ORG xxxxH ORG是起始地址设置伪指令的操作码,xxxx是四位 十六进制地址。该指令表明其后紧跟的指令性语句 的机器码放在以xxxxH为起始地址的单元中。 例: ORG 0100H DELAY: MOV R0,#30H 6 04:34:02

起始地址设置伪指令ORG 一般,在整个程序的起始处放置一条“ORG0000H”伪 指令,表明下面开始的指令性语句从000H开始存放 后面有一定独立性的程序段也可以用这条指令指定程 序段存放的起始地址。 例如: 0000H0000010 ORG OOOOH 0001 H addr15-8 START: LUMP MAIN 0002H|addr7~0 - MOV A#oOH 0003H外部中断0中服入口地址 ORG 0100H DELAY: MOV RO.#30H 0100H01111000 0101H00110000
7:59:36 1、起始地址设置伪指令ORG ➢一般,在整个程序的起始处放置一条“ORG 0000H”伪 指令,表明下面开始的指令性语句从0000H开始存放。 后面有一定独立性的程序段也可以用这条指令指定程 序段存放的起始地址。 例如: ORG 0000H START: LJMP MAIN MOV A,#00H …… ORG 0100H DELAY: MOV R0,#30H …… 7 04:34:02 0000H 0000 0010 0001H addr15~8 0002H addr7~0 0100H 0111 1000 0101H 0011 0000 …… …… 0003H外部中断0中服入口地址

49.1伪指令 2、数据定义伪指令 ◇功能:定义一个数据存储区,其类型由数据定义伪指 令指定,可以给存储区赋初值,也可以仅仅给变量分 配存储单元,而不赋予特定的值 般格式 标号:数据定义伪指令操作数[操作数…注释 方括号中的内容为可选项。伪指令后面的操作数可以 不止一个。如有多个操作数,互相之间用逗号隔开 例如:SEG:DB23H;定义一个字节 标号SEG可以如下方式引用:标号SEG不能以变量 MOV RO. #SEG 方式被引用: MOV A,@RO MOV A. SEG
7:59:36 4.9.1 伪指令 2、数据定义伪指令 功能:定义一个数据存储区,其类型由数据定义伪指 令指定,可以给存储区赋初值,也可以仅仅给变量分 配存储单元,而不赋予特定的值。 一般格式: [标号:] 数据定义伪指令 操作数 [,操作数…] [;注释] 方括号中的内容为可选项。伪指令后面的操作数可以 不止一个。如有多个操作数,互相之间用逗号隔开。 9 04:34:02 例如: SEG: DB 23H ;定义一个字节 标号SEG 可以如下方式引用: MOV R0, #SEG MOV A, @R0 标号SEG 不能以变量 方式被引用: MOV A, SEG

2、数据定义伪指令 ◇常用的数据定义伪指令有DB和DW: (1)定义字节DB( Define byte) 标号:]DB〈项或项表 其中项或项表:指一个字节、数或数字串,或以引号 括起来的ASCI码字符串(一个字符用ASCI码表示, 相当于一个字节) MSG: DB Press A Key To continue, 0 TAB:DB2.3,5,7,11,13,17,19,";
7:59:36 2、数据定义伪指令 常用的数据定义伪指令有DB和DW: (1)定义字节DB(Define Byte) [标号:] DB 〈项或项表〉 其中项或项表:指一个字节、数或数字串,或以引号 括起来的ASCII码字符串(一个字符用ASCII码表示, 相当于一个字节)。 MSG: DB 'Press A Key To Continue', 0 TAB: DB 2, 3, 5, 7, 11, 13, 17, 19, ';' 11 04:34:02

2、数据定义伪指令 (2)定义字DW( Define word) ◇DW伪指令格式:[标号]DW ◇功能:用于定义字变量。项或项表指所定义的一个字 「两个字节)或用逗号分开的字串。可用来定义地址。 ◇每个字变量占2字节存储单元两个字节存储单元相邻 低高)位字节在低地址中,高低位字节在高地址中。 ◇多个操作数时按排列顺序从 TABLE: 0100H O1H 0101H00H 低地址开始存放。 0102H O1H 0103H[A田 TABLE: DW TABLE TABLE+10. HERE 0104H OIH HERE: DW 0 0105H|06H DW S HERE:0106H[00 0107H[00H 0108H|0IH
7:59:36 2、数据定义伪指令 (2)定义字DW(Define Word) DW伪指令格式:[标号:] DW 功能: 用于定义字变量。项或项表指所定义的一个字 (两个字节)或用逗号分开的字串。可用来定义地址。 每个字变量占2字节存储单元,两个字节存储单元相邻, 低(高)位字节在低地址中, 高(低)位字节在高地址中。 12 04:34:02 TABLE: DW TABLE, TABLE+10, HERE HERE: DW 0 DW $ 0100H 01H 0101H 00H 0102H 01H 0103H 1AH 0104H 01H 0105H 06H 0106H 00H 0107H 00H 0108H 01H 0109H 08H 多个操作数时,按排列顺序从 低地址开始存放。 TABLE: HERE:

2、数据定义伪指令(DS在“§5.3单片机C语言程序调试用到) (3)预留存储空间DS(补充) ◇格式:[标号]DS表达式 ◇功能:从标号地址开始保留若千个字节的内存空间以 备存放数据。保留字节单元数由表达式值决定 ◇例如 仅DS伪指令需在数据段中定义 DSEG AT0x30;数据段起始地址30H VARIBLE:DS5H;该指令不能出现在代码段 ◇汇编后从30H开始,预留5个字节的内存单元 数据段中的标号SEG可以变量方式被引用: MOV VARIBLE. A MOV RI VARIBLE ◇ CSEG AT0080h;代码段可用此指令定义起始地址, 或省略则默认为都是代码段。(仅作了解)
7:59:36 2、数据定义伪指令 (3)预留存储空间 DS (补充) 格式:[标号:] DS 表达式 功能:从标号地址开始, 保留若干个字节的内存空间以 备存放数据。保留字节单元数由表达式值决定。 例如: DSEG AT 0x30 ; 数据段起始地址30H VARIBLE: DS 5H ;该指令不能出现在代码段 汇编后从30H开始,预留5个字节的内存单元。 13 04:34:02 (DS在“§5.3 单片机C语言程序调试”用到) 数据段中的标号SEG 可以变量方式被引用: MOV VARIBLE, A; MOV R1, VARIBLE; CSEG AT 0080h; 代码段可用此指令定义起始地址, 或省略则默认为都是代码段。(仅作了解) 仅DS伪指令需在数据段中定义

2、数据定义伪指令 例如: ORG 1000H SEG: DB 23H ;定义一个字节 DW 1000H ;定义一个字 DB MCS-51 ;定义一个字符串 END 则:(1000H)=23H SEG的地址为1000H (1001H)=9H10H (1002H)=4H00H (1003H)=4DH M的ASCI码 (1004H)=43H C的ASCI码 (1005H)=53H S的ASCI码 (1006H)=2DH -3的ASCI码 (1007H)=35H 数字5的ASCI码 (1008H)=31I 数字1的ASCI码
7:59:36 2、数据定义伪指令 例如: ORG 1000H SEG: DB 23H ;定义一个字节 DW 1000H ;定义一个字 DB ‘MCS-51’ ;定义一个字符串 END 则: (1000H)=23H SEG的地址为1000H (1001H)=00H 10H (1002H)=10H 00H (1003H)=4DH ‘M‘的ASCII码 (1004H)=43H ‘C’ 的ASCII码 (1005H)=53H ‘S’ 的ASCII码 (1006H)=2DH ‘-’的ASCII码 (1007H)=35H 数字5的ASCII码 (1008H)=31H 数字1的ASCII码 14 04:34:02
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《计算机硬件基础》课程教学资源(PPT课件讲稿)第六章 汇编语言及其程序设计.ppt
- 中国科学技术大学:《网络信息安全 NETWORK SECURITY》课程教学资源(PPT课件讲稿)第一章 计算机网络安全概述2/2(主讲:肖明军).ppt
- 清华大学:Computational Models for Social Network Analysis(PPT讲稿)mining big social networks(Part III:Group and Structure).pptx
- 苏州大学:文档评分与向量空间模型(PPT讲稿).ppt
- 淮阴工学院:《数据库原理》课程教学资源(PPT课件讲稿)第2章 数据库系统结构.ppt
- 四川大学:《操作系统 Operating System》课程教学资源(PPT课件讲稿)Chapter 5 互斥与同步(Mutual Exclusion and Synchronization)5.3 Semaphores.ppt
- 《编译原理》课程教学资源(PPT课件讲稿)第五章 语法制导的翻译 5.1 语法制导的定义 5.2 S属性定义的自下而上计算.ppt
- 《数字图像处理》课程教学资源(PPT课件讲稿)第7章 图像分割.ppt
- 《人工智能》课程电子教案(PPT课件讲稿)第9章 机器学习与知识发现.ppt
- 赣南师范大学:《计算机网络原理》课程教学资源(PPT课件讲稿)第七章 网络层.ppt
- 四川大学:《计算机操作系统 Operating System Principles》课程教学资源(PPT课件讲稿)第1章 导论(主讲:段磊).ppt
- 搜索引擎技术(PPT讲稿)Web Spam.ppt
- 电子科技大学:《密码理论》课程教学资源(PPT课件讲稿)第2章 流密码.ppt
- 《编译原理》课程教学资源(PPT课件讲稿)语法制导的翻译(Syntax-Directed Translation).pptx
- 《Photoshop CS教程》教学资源(PPT课件)第7章 编辑文字.ppt
- 西南交通大学:《网络性能评估与测试 Network Performance Evaluation and Testing》(PPT课件讲稿)第2讲 网络测试技术基础(主讲:张新有).ppt
- 《数据结构》课程教学资源(PPT课件讲稿)第五章 多维数组与广义表.ppt
- 上海交通大学:超立方体 Hypercube(PPT讲稿)Low-Diameter Architectures.ppt
- 东北大学:《计算机图形学》课程教学资源(PPT课件讲稿,主讲:闻时光).ppt
- 《数据结构》课程教学资源(PPT课件讲稿)第四章 串.ppt
- 《C语言程序设计》课程教学资源(PPT课件讲稿)第三章 控制语句.ppt
- 《机器学习》课程教学资源(PPT课件讲稿)第十三章 半监督学习.pptx
- 《数字图像处理》课程教学资源(PPT课件)第三章 灰度直方图.ppt
- 《电子技术》课程教学资源(PPT讲稿资料)玩转Arduino合集.ppt
- 《计算机网络》课程教学资源(PPT课件讲稿)第7章 广域网.ppt
- 电子科技大学:《信息安全概论》课程教学资源(PPT课件讲稿)第一章 概述(秦志光).ppt
- 西安交通大学:《微型计算机硬件技术》课程教学资源(PPT课件讲稿)第三章 总线线驱动与接口(主讲:桂小林).ppt
- 基于分布式哈希表的对等系统关键技术研究(论文PPT).ppt
- 山东大学:《人机交互技术》课程教学资源(PPT课件讲稿)第4章 人机交互技术.ppt
- 《C程序设计》课程电子教案(PPT课件)第四章 数组和结构.ppt
- 华东师范大学:《程序设计》课程教学资源(PPT课件讲稿)第九讲 类与对象(面向对象基础).pptx
- 《计算机视觉》课程教学资源(PPT课件讲稿)第十二章 目标识别 Object Recognition.ppt
- 南京大学:《面向对象技术 OOT》课程教学资源(PPT课件讲稿)引言、背景概述.ppt
- 《数据结构》课程教学资源(PPT课件讲稿)第3章 栈和队列.ppt
- 中国科学技术大学:《计算机体系结构》课程教学资源(PPT课件讲稿)第4章 存储层次结构设计.ppt
- 东南大学:《数据结构》课程教学资源(PPT课件讲稿)分治算法.pptx
- 《电子商务实用教程》课程教学资源(PPT课件讲稿)第五章 物流配送.ppt
- 广西医科大学:《计算机网络 Computer Networking》课程教学资源(PPT课件讲稿)CHAPTER 9 COMMUNICATIONS CIRCUITS.pptx
- 安徽理工大学:《汇编语言》课程教学资源(PPT课件讲稿)第三章 80x86指令系统和寻址方式.ppt
- 机械工业出版社:国家“十一五”规划教材《数据库原理与应用教程》教学资源(PPT课件,第3版)第8章 数据库设计.ppt