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

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

资源类别:文库,文档格式:PPT,文档页数:76,文件大小:4.37MB,团购合买
4.1 编程语言 (4.1.1助记符语言; 4.1.2操作码; 4.1.2操作数) 4.2 指令格式及其分类 4.3 寻址方式 4.4 数据传送类指令 4.5 逻辑操作类指令 4.6 算术运算类指令
点击下载完整版文档(PPT)

第四章指令系統及汇编语言程序设计 本章学习目标 ◇了解助记符、指令格式 ◇掌握单片机寻址方式 ◇掌握单片机指令系统 ◇掌握单片机汇编语言程序设计及开发环境 125445 16:17:5

16:17:59 第四章 指令系统及汇编语言程序设计 本章学习目标 了解助记符、指令格式 掌握单片机寻址方式 掌握单片机指令系统 掌握单片机汇编语言程序设计及开发环境 3 12:54:45

箄四拿指令系統及汇編语言程序设计语合 41编程语言(41记符语宣;412操作码;412操作数) 42指令格式及其分类 43寻址方式 44数据传送类指令 45逻辑操作类指令 46算术运算类指令 具体指令系 统介绍 47位操作指令 48控制类转移指令 49汇编语言程序设计 4.10汇编语言程序调试 411利用ISP工具将程序下载到单片机中验证程序 125446 16:17:5

16:17:59 第四章 指令系统及汇编语言程序设计语言 4.1 编程语言 (4.1.1助记符语言; 4.1.2操作码; 4.1.2操作数) 4.2 指令格式及其分类 4.3 寻址方式 4.4 数据传送类指令 4.5 逻辑操作类指令 4.6 算术运算类指令 4.7 位操作指令 4.8 控制类转移指令 4.9 汇编语言程序设计 4.10 汇编语言程序调试 4.11利用ISP工具将程序下载到单片机中验证程序 4 12:54:46 具体指令系 统介绍

§4.1编程语言 1、指令及指令系统 指令是计算机完成某种指定操作的命令,程 序是以完成一定任务为目的指令的有序组合 指令的集合构成指令系统。 2、指令两种形式(在CPU的同一指令系统中) ◇汇编指令的形式:人们进行编写、调试程序使 用的形式;(cpu不同,汇编指令不同) ◇机器指令的形式:是机器所能识别的二进制数 或十六进制数的形式。 125446 16:17:5

16:17:59 §4.1 编程语言 1、指令及指令系统 指令是计算机完成某种指定操作的命令,程 序是以完成一定任务为目的指令的有序组合。 指令的集合构成指令系统。 2、指令两种形式 (在CPU的同一指令系统中) 汇编指令的形式:人们进行编写、调试程序使 用的形式; (cpu不同,汇编指令不同) 机器指令的形式:是机器所能识别的二进制数 或十六进制数的形式。 7 12:54:46

§4.1编程语言 编写计算机程序有三种不同层次的计算机语言: 机器语言,汇编语言和高级语言(不针对具体cpu) ◇机器语言 ◆用二进制数表示的指令,是CPU唯一能够直接 识别和执行的程序形式。 ◆缺点是不直观,不易识别、理解和记忆,因此 编写、调试程序时都不采用这种形式的语言。 125446 16:17:5

16:17:59 §4.1编程语言 编写计算机程序有三种不同层次的计算机语言: 机器语言, 汇编语言和高级语言(不针对具体cpu)。 机器语言 用二进制数表示的指令,是CPU唯一能够直接 识别和执行的程序形式。 缺点是不直观,不易识别、理解和记忆,因此 编写、调试程序时都不采用这种形式的语言。 8 12:54:46

汇编语言( Assembly Language) ◆是用英文缩写形式的助记符书写的指令,地址、数 据也可用符号表示。 ◆优缺点:与机器语言程序相比,编写、阅读和修改 都比较方便,不易出错。但用汇编语言编写的源程 序必须进行汇编。 ◆目前,常用计算机软件自动完成汇编工作。 不同的CPU具有不同的汇编语言,一般不能通用。 ◆在实际系统中,对程序执行速度要求较高而软件处 理功能有限的场合,以及对硬件操作有较强的针对 性的场合,常用汇编语言编程。 125446 16:17:5

16:17:59 汇编语言(Assembly Language) 是用英文缩写形式的助记符书写的指令,地址、数 据也可用符号表示。 优缺点:与机器语言程序相比,编写、阅读和修改 都比较方便,不易出错。但用汇编语言编写的源程 序必须进行汇编。 目前,常用计算机软件自动完成汇编工作。 不同的CPU具有不同的汇编语言,一般不能通用。 在实际系统中,对程序执行速度要求较高而软件处 理功能有限的场合,以及对硬件操作有较强的针对 性的场合,常用汇编语言编程。 9 12:54:46

高级语言( High Level Language) ◆优缺点:不针对某种具体的计算机,通用性强。用 高级语言编程不需了解计算机内部的结构和原理, 这种语言的形式更接近英语,对于非计算机专业的 人员比较易于掌握。 ◆高级语言程序易读、易编写,程序结构比较筒洁, 大量用于科学计算和事务处理 ◆用高级语言编写的源程序同样必须编译后,计算机 才能执行。编译程序比汇编程序复杂得多,需要占 用较大容量的存储器,编译的过程也要花费更多的 时间。 125446 16:17:5

16:17:59 高级语言(High Level Language) 优缺点:不针对某种具体的计算机,通用性强。用 高级语言编程不需了解计算机内部的结构和原理, 这种语言的形式更接近英语,对于非计算机专业的 人员比较易于掌握。 高级语言程序易读、易编写,程序结构比较简洁, 大量用于科学计算和事务处理。 用高级语言编写的源程序同样必须编译后,计算机 才能执行。编译程序比汇编程序复杂得多,需要占 用较大容量的存储器,编译的过程也要花费更多的 时间。 10 12:54:46

41.1助记符语言 ◇汇编语言的指令由操作码和操作数组成。 操作码用规定的英文缩写字母组成称为助记符。例如: MOVA#76H 表示将十六进制的数据76H送到累加器A中 ◆二进制机器语言是:01110100和01110110 ◆十六进制数是:74H,76H 74H:操作码,将一个数据传送到累加器A;76H:操作数。 4.1.2操作码 ◇操作码功能:表示对操作数进行什么操作 ◇表示形式:由英文缩写字母组成,容易理解和记忆。 ◇例,MOV:数据的传送;ADD:数据相加;ANL:逻辑与 25446 16:17:5

16:17:59 4.1.1 助记符语言 汇编语言的指令由操作码和操作数组成。 操作码用规定的英文缩写字母组成,称为助记符。例如: MOV A, #76H 表示将十六进制的数据76H送到累加器A中, 二进制机器语言是:01110100和01110110 十六进制数是:74H,76H。 74H: 操作码, 将一个数据传送到累加器A; 76H: 操作数。 11 12:54:46 操作码功能:表示对操作数进行什么操作。 表示形式:由英文缩写字母组成,容易理解和记忆。 例, MOV: 数据的传送; ADD:数据相加; ANL: 逻辑与 4.1.2 操作码

413操作数 MOV RO,#10H;MOV30HR1; ◇操作数功能:指出对什么数进行操作以及将操作的结 果放到何处。 ◇操作数的表示形式:可以是参与操作的数据,也可以 是参与操作的数据所在存储器的地址,还可以是数据 所在的寄存器等不同形式。 ◇寻找这些不同形式的操作数的方式称为寻址方式。 ◇立即数MOVA,#76H ◆定义:汇编语言指令中,直接参与操作的数据。 ◆表示方法:十进制格式、十六进制格式、二进制格式。 ◆数据进制区分是在数据后面加后缀:十进制数后缀为D 或省略,十六进制数后缀为H,二进制数后缀为B。 25446 16:17:5

16:17:59 4.1.3 操作数 操作数功能:指出对什么数进行操作以及将操作的结 果放到何处。 操作数的表示形式:可以是参与操作的数据,也可以 是参与操作的数据所在存储器的地址,还可以是数据 所在的寄存器等不同形式。 寻找这些不同形式的操作数的方式称为寻址方式。 12 12:54:46 立即数 定义:汇编语言指令中, 直接参与操作的数据。 表示方法:十进制格式、十六进制格式、二进制格式。 数据进制区分是在数据后面加后缀:十进制数后缀为D 或省略,十六进制数后缀为H, 二进制数后缀为B。 MOV A, #76H MOV R0, #10H ; MOV 30H, R1;

立即数 ◇注意 ◆参与操作的数据的位数要与参与操作的环境相匹配 ◆例如,指令MOVA,#71H,立即数71H是8位二进制 数01110001B的十六进制格式,而A是8位的寄存器, 所以给8位寄存器送的数据不能超出8位。 ◆同理,给十六位寄存器送的数据不能超出16位。 MOV DPTR.#1234H ◆数据只能是整数的格式,不能是小数的格式。逻辑 数据也和二进制数据的表示一样,可以用十进制 十六进制、二进制的数据格式表示。 125446 16:17:5

16:17:59 立即数 注意 参与操作的数据的位数要与参与操作的环境相匹配。 例如,指令MOV A, #71H,立即数71H是8位二进制 数01110001B的十六进制格式,而A是8位的寄存器, 所以给8位寄存器送的数据不能超出8位。 同理,给十六位寄存器送的数据不能超出16位。 MOV DPTR, #1234H 数据只能是整数的格式,不能是小数的格式。逻辑 数据也和二进制数据的表示一样,可以用十进制、 十六进制、二进制的数据格式表示。 13 12:54:46

立即数 ◆当汇编指令中的数据是十六进制且是以字母开头时, 该数据应加一个前导0,以表示后面的字母不是变量 而是数字 MOV A#OFFH ◆在8051内核单片机中,一个数据的前面有前缀#号则 表示后面的数据是立即数,如果数据的前面没有#号, 则说明该数据表示的是直接地址 125446 16:17:5

16:17:59 立即数 当汇编指令中的数据是十六进制且是以字母开头时, 该数据应加一个前导0,以表示后面的字母不是变量 而是数字。 MOV A, #0FFH, 在8051内核单片机中,一个数据的前面有前缀#号则 表示后面的数据是立即数,如果数据的前面没有#号, 则说明该数据表示的是直接地址。 14 12:54:46

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

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

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