3.1 指令系统简介 一、几个概念 二、汇编语言指令格式 三、指令的分类 四、指令的符号说明 主讲:吴政江 下一页.

Slides:



Advertisements
Similar presentations
主讲人:刘利 交通大学网络控制课程系列 上海交通大学机电控制研究所 交通大学网络控制课程系列 考试课、专业基础课、必修课
Advertisements

第7章 AT89S51单片机的 串行口 1.
第三章 计算机系统 的组成与工作原理 本章学习目标 理解模型机的结构及工作过程 掌握单片机的结构 掌握单片机I/O口的使用
第5章 中断系统 5.1 中断的概念 5.2 MCS-51单片机的中断流程 5.3 MCS-51的中断响应条件和中断处理
本章内容: 中断的概念 MCS-51单片机中断系统 外部事件中断及应用
第四章 指令系统及汇编语言程序设计.
8051 指令.
第四章 指令系统及汇编语言程序设计.
本章分为四节,主要介绍: 4.1 程序编制的方法和技巧 4.2 源程序的编辑和汇编 4.3 基本程序结构 4.4 常用程序举例.
项目2 2个LED发光二极管控制 知识与能力目标 熟悉单片机的I/O口功能与特性。
本章小结 C51单片机指令系统概述 C51单片机寻址方式 C51单片机指令系统
单片机原理与应用.
第2章 MCS-51单片机指令系统与汇编语言程序设计
報告者:朱耿育 紀翔舜 組員:詹以群 張永傑 指導老師:梁新潁
复 习 一. 计算机中的数和编码 1. 2,10,16进制数及其之间的转换(整数) 按权展开,除x取余 2
第二部分 微机原理 第4章 汇编语言 程序设计 主讲教师:喻红.
单片机应用技术 项目一 循环彩灯装置 第6讲 指令功能及汇编语言程序设计(一) 《单片机应用技术》精品课程组 湖北职业技术学院机电工程系.
本章内容: 中断的概念 MCS-51单片机中断系统 外部事件中断及应用
第8章 模拟接口 8.1 模拟接口概述 8.2 DAC及其接口 8.3 ADC及其接口.
第二部分 微机原理 第3章 MCS-51的 指令系统 主讲教师:喻红.
一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置. 一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置.
第14章 单片机应用系统抗干扰 与可靠性设计 1.
第6章 MCS - 51单片机内部定时器/ 计数器 及串行接口 6.1 定时器/计数器的结构及工作原理 6.2 方式和控制寄存器
第七章 MCS-51系统扩展 一、程序存储器扩展
第3章 AT89C51指令系统 3.1基本概念内部结构和引脚功能 指令、指令系统、机器代码
逻辑运算类指令 包括与、或、非、异或、清0及移位等共24条;一般不影响PSW中的标志位;助记符有:ANL、ORL、XRL、RL、RLC、RR、RRC、CLR和CPL共9种。 一、逻辑与指令 ANL A,Rn ;A←(A)∧( Rn) ANL A,direct;A←(A)∧(direct)
单片机原理及应用 MCS-51系列单片机的基本硬件结构 MCS-51指令系统 MCS-51单片机的系统扩展与应用.
第七章 MCS-51并行口的扩展 MCS51单片机内部有4个并行口,当内部并行口不够用时可以外扩并行口芯片。可外扩的并行口芯片很多,分成2类:不可编程的并行口芯片(74LS3734和74LS245)和可编程的并行口芯片(8255)。 7.1 不可编程并行口芯片的扩展 7.2 可编程并行口芯片的扩展.
单片机原理及应用 ——基于Proteus与Keil C 哈工大出版社
4.A/D与D/A转换器 1).DAC0832与MCS-51接口
第2章 单片机的结构原理与 简单应用 (课时:10学时).
第八章 MCS-51与数码显示器和键盘的接口 一、MCS-51与数码显示器接口 数码显示器是单片机应用产品中最常用的廉价的输 出设备,它由8个发光二极管按一定规律排列而成, 当某一发光二极管导通时,则会被点亮,控制不同 组合的二极管导通,就能显示出各种字符。 1.显示器的结构.
本 章 重 点 单片机的简单I/O扩展 8255A可编程并口芯片 8279可编程键盘/显示器接口芯片 单片机键盘接口技术
单片机原理 单 片 机 单片机接口技术 单片机应用技术.
第三章 指令系统.
第3章 指令系统及程序设计举例 3.1 指令格式与寻址方式 一、指令格式 1. 指令 操作码 目标操作数,源操作数
第10章 综合实训 课题一 水温控制系统设计 一、实训目的 二、课题要求 熟悉常用温度传感器AD590的特性及接口电路的设计方法;
第2章 单片机系统组成原理 2.1 MCS-51单片机组成原理 2.2 单片机复位电路设计 2.3 MCS-51存储器配置
6.1 输入/输出 6.2 CPU与外设数据传送方式 6. 3 MCS-51中断系统 6. 4 中断应用举例
本 章 重 点 单片机的结构特点 单片机的存储器特点 I/O端口的特点 CPU时序 课时安排:3个课时.
一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置. 一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置.
第四章 指令系统及汇编语言程序设计.
第六次全国人口普查 近期数据处理工作部署 夏雨春 2010年12月28日.
第4章 中断技术 一个完整的微机系统是由硬件和软件共同构成的。微机系统的硬件有CPU、存储器和I/O口,外设组成。CPU与存储器之间的信息交换比较简单,而CPU与外设之间进行信息交换之前必须确定外设是否准备好,即选择I/O传送方式。I/O传送方式有4种:无条件、查询、中断和DMA。本章学习中断传送方式的有关内容。
单片机系统设计 教师:朱华贵 2016年03月01日
数码管数字时钟电路的设计 1. 系统硬件电路的设计
单片机技术及应用 课程要求:应用MCS-51汇编语言进行 软件设计。 应用MCS-51及有关芯片进 行硬件接口设计。
第3章 MCS-51指令系统 介绍MCS—51系列单片机的寻址方式 介绍MCS—51系列单片机的指令系统
微机原理与接口技术 西安邮电大学计算机学院 王忠民.
第4章 80C51系列指令系统 教学目的:熟悉80C51系列单片机的寻址方式及 每一种寻址方式对应的寻址空间;掌 握每一条指令功能。
本章内容 MCS-51单片机指令系统的格式 MCS-51单片机寻址方式 指令系统的分析
汽车单片机应用技术 学习情景1: 汽车空调系统的单片机控制 主讲:向楠.
CPU中的专用寄存器(SFR) 一、累加器Acc 二、通用寄存器B 三、程序计数器PC 四、堆栈指针SP 五、数据指针DPTR
2019/4/29 计算机组成原理 辅导教师:陆明强.
第五讲:AT89C51单片机存储器结构 一、半导体存储器 二、存储器空间划分方法 三、数据存储器(RAM) 四、程序存储器(ROM)
第三章 计算机系统的组成与工作原理.
汽车单片机应用技术 学习情景1: 汽车空调系统的单片机控制 主讲:向楠.
2. MCS-51单片机的组成及结构分析 2.1 MCS-51单片机的内部结构及结构特点
注册建造师 《市政公用工程管理与实务》 环球网校 白老师 每个PPT都有对应的头和尾 PPT头包含内容:
四、手工汇编 完成汇编的方法有两种:手工汇编和汇编程序汇编 1.手工汇编步骤 A
单片机原理与应用.
汽车单片机应用技术 学习情景1: 汽车空调系统的单片机控制 主讲:向楠.
简单芯片扩展I/O接口 8155可编程接口芯片及其使用 键盘及显示器接口设计 A/D和D/A转换接口技术
单片机应用技术 (C语言版) 第3章 MCS-51指令系统及 汇编程序设计
第二章 MCS-51单片机程序设计 第一章 8086程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口
「同根同心」- 交流計劃 廣州及珠三角經濟發展兩天考察團 2016
第4章 MCS-51汇编语言程序设计 教学基本要求: (1)、了解MCS-51汇编语言程序设计的特点;
第2章 80C51单片机的硬件结构 教学基本要求: (1)、熟悉单片机的定义、名称、分类方法;
第1章 微型计算机基础.
Presentation transcript:

3.1 指令系统简介 一、几个概念 二、汇编语言指令格式 三、指令的分类 四、指令的符号说明 主讲:吴政江 下一页

几个概念 指令:要求计算机完成某种特定操作的命令。由操作码和操作数两部分组成。操作码用来规指令完成的具体操作。操作数表示操作的对象,可能是一个具体的数据,也可能是数据的地址。 指令系统:计算机能够执行的所有指令的集合。不同的CPU有不同的指令系统,MCS-51共有111条指令。 程序:为解决某一特定问题而用某一种语言编写的指令的有序集合。 计算机语言:人与计算机进行交流的工具。按其与计算机硬件的接近程度可分为两大类:低级语言,与硬件最接近,即能直接操作硬件。如:机器语言、汇编语言等。高级语言,不能直接操作硬件,必须有操作系统的支持。如:C、QBASIC、PASCAL、FORTRAN语言等等。 机器语言:一种能被机器直接识别和执行的语言,用二进制数“0”和“1”形式表示。它存在于计算机存储器内,直接指挥机器的运行。为了阅读和书写的方便,机器语言常写成十六进制形式。 汇编语言:一种面向机器的程序设计语言,用助记符形式表示,能直接操作硬件,属于低级语言。 汇编语言源程序:用汇编语言编写的程序。不能被机器直接执行,必须由“汇编程序”翻译成机器语言的目标程序。 汇编程序:由计算机公司提供的,用于将汇编语言源程序翻译成目标程序(机器语言)的系统程序。如微机的MASM、ASM等。 下一页 上一页 返回

汇编语言指令格式 上一页 下一页 返回 [标号:]〈操作码助记符〉 [第一操作数] [,第二操作数] [,第三操作数] [;注释] [标号:]〈操作码助记符〉 [第一操作数] [,第二操作数] [,第三操作数] [;注释] 1、标号:表示该指令位置的符号地址,在程序汇编时,它被赋以该指令在ROM中存放的具体地址。它是以英文字母开头的1~6个字母或数字组成的字符串,并以“:”结尾。通常在子程序的入口或转移指令的目标地址处才赋予标号。 2、操作码助记符:由助记符表示的字符串,它规定了指令的功能(如加、减等),是指令的核心部分,不可缺省。 3、操作数:指参加操作的数据或数据的地址,即指令的操作对象。可以是1个、2个或3个也可以没有。操作数之间以“,”分隔,操作码与操作数之间以空格分隔。 4、注释:是对该条指令功能的解释,以便人们交流、阅读、修改和调试程序。注释以“;”开始。它不是程序的功能部分,不影响指令的执行,但最好养成附带注释的习惯。 例: WZJ:MOV 20H,A ;(20H)←A 上一页 下一页 返回

指令的分类 上一页 下一页 返回 1、按指令的长度分 2、按指令的执行时间分(以机器周期计算) 3、按指令的功能分 单字节指令(50条):只占一个字节的存储单元,操作码和操作数同存储在一个字节中。 双字节指令(45条):占有二个字节的存储单元,其中第一字节为操作码,第二字节为操作数或操作数的地址。 三字节指令(16条):占有三个字节的存储单元,操作码占一个单元,操作数占两个单元。操作数既可以是数据,也可以是数据的地址。 2、按指令的执行时间分(以机器周期计算) 单周期指令(64条):执行时需一个机器周期。 双周期指令(45条):执行时需二个机器周期。 四周期指令(乘、除法2条):执行时需四个机器周期。 3、按指令的功能分 数据传送类指令(29条) 算术运算类指令(24条) 逻辑运算类指令(24条) 控制转移类指令(17条) 位操作(布尔操作)类指令(17条) 上一页 下一页 返回

指令的符号说明 1、44种助记符及其意义(基本上是英文单词的缩写) 2、指令描述中的符号及其意义(见教材27页~28页) MOV、MOVC、MOVX、PUSH、POP、XCH、XCHD、ANL、ORL、XRL|SETB、CLR、CPL、RL、RLC、RR、RRC、SWAP、ADD、ADDC、INC、MUL、DIV、DA、AJMP、LJMP、SJMP、JMP、JZ、JNZ、JB、JNB、JBC、CJNE、DJNZ、ACALL、LCALL、RET、RETI、NOP、DEC。 2、指令描述中的符号及其意义(见教材27页~28页) Rn、Ri、@Ri、@DPTR、#DATA、#DATA16、direct、addr16、addr11、rel、bit、A、B、C、/、X、(X)、((X))、← 例:MOV A,@R1;A ←((R1)) 上一页 返回

3.2 寻址方式 寻址方式:取得操作数的方式,即如何找到了操作数。MCS-51共有七种寻址方式。 3.2 寻址方式 寻址方式:取得操作数的方式,即如何找到了操作数。MCS-51共有七种寻址方式。 一、立即寻址:操作码后直接给出操作数(立即数)。采用立即寻址的指令是双字节或三字节指令,第一字节为指令的操作码,第二、三字节是立即数。立即数前必须加“#”标志。例:MOV A,#40H;将立即数40H送至A中 MOV DPTR,#3456H;DPTR←3456H 00110100 01010110 片内SFR 01000000 片内SFR DPH 高位立即数34H A DPL 低位立即数56H 立即数40H

直接寻址与寄存器寻址 二、直接寻址:在操作码后面直接给出操作数所在单元的地址。采用直接寻址的指令一般是双字节或三字节,第一字节为操作码,第二、三字节为操作数的地址码。这种寻址方式可进行内数据存储器的访问。 1、访问SFR,指令中direct以单元地址或寄存储器符号形式表示 。 例:MOV A,81H;两条指令的功能完全相同,SP的地址为81H MOV A,SP 2、访问内部RAM的低128B,指令中direct以单元地址形式表示。 例:MOV A,35H;A←(35H),设35H单元的内容为55H,则指令 执行后A的内容为55H 三、寄存器寻址:操作数存放在某一寄存器中,指令中指出相应的寄存器。即寄存器的内容就是操作数。可用于访问选定的工作寄存器R0~R7,累加器A,寄存器B和位累加器C中的数。 例:MOV R0,#55H;将数据55H送至A中 MOV A,R0

四、寄存器间接寻址 用寄存器的内容作为操作数的地址,该地址对应的单元的内容才是操作数。用符号@作为间址标志。用于访问片内RAM或片外RAM。 1、当访问片内RAM或片外RAM的低256B空间时,可用R0或R1作为间址寄存器。 例:MOV R0,#25H MOV A,@R0 设25H单元的内容为73H,则执行结果:以R0的内容25H为地址,把25H地址单元的内容73H送到累加器A中,A的内容为73H。 2、当访问片外RAM时,用DPTR作间址寄存器。由于DPTR是16位寄存器,所以它可访问片外RAM整个64KB的地址空间。 例:MOV DPTR,#2345H;将片外RAM2345H单元中的内容送入A中 MOV A,@DPTR 3、堆栈指令PUSH、POP也可算寄存器间接寻址,其间址寄存器为SP。即以SP的内容为地址,把该地址单元中的内容压入堆栈或弹出到目标地址。

五、基址加变址寻址 以DPTR或PC为基址寄存器,以A作为变址寄存器,两者内容之和为操作数的地址。MCS-51中有两条基址加变址寻址指令,用于访问固化在ROM中的常数,称为查表指令。 1、以PC作基地址加变址形成操作数地址(@A+PC )指令 MOVC A,@A+PC 2、以DPTR作基地址,A作变址,由@A+DPTR形成操作数地址指令 MOVC A,@A+DDPTR 例:MOV DPTR,#0300H;DPTR←0300H MOV A,#02H ;A←02H MOVC A,@A+DPTR;A←(0300H+02H) 将ROM中0302H单元的数(设为55H)取出送A中。

六、相对寻址 以PC作为基址寄存器,将其当前值(执行完转移指令后的PC值)与指令中给出的偏移量(rel)相加,所得的和即为转移的目标地址。即目标地址=转移指令地址+转移指令字节数+偏移量rel=PC当前值+偏移量rel。rel为补码表示的8位带符号数,其值为-128~+127,故转移的范围为PC-128~PC+127。 在MCS-51中有两类转移指令:二、三字节。在计算PC当前值 时要注意指令的字节数。(除非手工汇编,编程时只要在目标地址处打上标号即可,然后由汇编程序自动计算) 例:SJMP 08H;指令代码为双字节,即80 08H 现设PC=2000H为本指令地址,则转移目标地址=(2000H+2)+08H=200AH 将偏量08H送入A,再与PC当前值 2002H相加,结果就是目的地址。

七、位寻址 位寻址是指对片内RAM的位寻址区(20H~2FH)和可位寻址的SFR进行位操作时的寻址方式。 在进行位操作时,借助于进位C作为位累加器,操作数直接给出该位的地址或位名称,然后再根据操作的性质进行操作。注意:位寻址的位地址与直接寻址的字节地址形式完全一样,主要由指令码来区分,应注意区分。 例:MOV C,20H;C←(20H),20H是位寻址的位地址 MOV A,20H;A←(20H),20H是直接寻址的字节地址 SETB RS0 ;(RS0)←1 位地址的表示方法: 1、直接地址形式。如:MOV C,35H;Cy←(35H) MOV C,20H; Cy←(20H) 2、位名称表示法。如:MOV C,RS1;Cy←(RS1) RS0、RS1、Cy、Ac、F0、F1、P、Ov等等。 3、加位表示法。 如:MOV C,Acc.5;Cy←( Acc.5) P0.0~P0.7、P1.0~P1.7、25H.4、 Acc.0~ Acc.7等等。