单片机原理及应用第三章 指令系统(循环、位操作)
高职高专单片机原理及应用33指令系统.ppt

6.
MOVC A, @A+PC
MOVC A, @A+DPTR
这是两条很有用的查表指令, 可用来查找存放在外部程序 存储器中的常数表格。第一条指令是以PC作为基址寄存器, A 的内容作为无符号数和 PC的内容 ( 下一条指令的起始地址) 相加后得到一个 16 位的地址, 并将该地址指出的程序存储器单 元的内容送到累加器A。 这条指令的优点是不改变特殊功能寄 存器和PC的状态, 只要根据A的内容就可以取出表格中的常数。 缺点是表格只能放在该条查表指令后面的 256 个单元之中, 表 格的大小受到限制, 而且表格只能被一段程序所利用。
(四)、 XRL A, Rn XRL A, direct XRL A, @Ri XRL A, #data XRL direct, A XRL direct, #data 这组指令的功能是: 将两个操作数的内容按位进行逻辑 异或操作, 并将结果送回到目的操作数的单元中。
四、
控制转移指令共有 17 条, 不包括按布尔变量控制程序转 移指令(见表 3.5)。其中有 64 KB范围内的长调用、 长转移 指令; 有 2 KB范围内的绝对调用和绝对转移指令; 有全空间的 长相对转移及一页范围内的短相对转移指令; 还有多种条件转 移指令。由于MCS -51 提供了较丰富的控制转移指令, 因此在 编程上相当灵活方便。这类指令用到的助记符共有 10 种: AJMP、LJMP、SJMP、JMP、ACALL、LCALL、JZ、JNZ、 CJNE、DJNZ。
例如: 进入中断服务子程序时, 把程序状态寄存器PSW、 累加器A、 数据指针DPTR进栈保护。设当前SP为 60H。则
PUSH PSW PUSH ACC PUSH DPL PUSH DPH 执行后, SP内容修改为 64H, 而61H、62H、63H、64H单元中 依次栈入PSW、A、DPL、DPH的内容。当中断服务程序结 束之前, 如下程序段(SP保持 64H不变)
《单片机原理及应用》(张迎新) 课后习题答案 电子工业出版社

第二章单片机结构及原理 1、MCS-51 单片机内部包含哪些主18bit CPU 是234K ROM4128B RAM516bit 定时器/632 根可编程I/O准8 4 I/O I/O 线都能独立地作输入或输出。
782操作的命令。
程序是根据任务要求有序编排指令的集合。
3、如何认识 89S51/52 存储器空间在物理结构上可以划分为 4 个分为3 89S51/52 存片外程序存储器、片内数据存储器、片外数据存储器。
在逻辑64KB 程序存储器地址25664数据存储器地址空间。
4CPU 使用的是哪组工CPU 如何确定和改变当前工CPU 使用的是第0 组工作寄00H07H CPU 通过改变状态字寄存器PSW中的RS0 和RS1 来确定工作寄存器组。
5SP 重新赋果CPU SP 应该多SP复位后指向07H 00H1FH 20H2FHSP 重新赋值。
如果CPU SP 应该至少设置为0FH。
6、89S51/52 的时钟周期、机器周期、指令周期8MHz 个单片机周期为中最基本的、最小的时间单位。
机器周期是指完成一个基本操12 个时钟周期组成。
指令周由若干个机器周期组成。
若fosc=8MHz=1/8×12μ s=1.5μ s 7、89S51/52 扩为什么不会据存储器使用不同的指令用来区分同一地址空间。
8、程序状态字寄存器PSWPSW是8PSW中各位状态通常是在指令执行的过程中自PSW.7Cy PSW.6ACPSW.5F0志位。
PSW.4、PSW.3RS1 和 RS0PSW.2OV PSW.1 PSW.0 P 9、位地址7CH 和字节地址7CH 有何区7CH 7CH87CH 是内部数据存储器中位寻址区中的一1 位二进制数。
位地址 7CH 具体在片内数据存储器字节地址为2FH 中的第4 2FH.4 10、89S51/52 中4 个I/O 89S51/52 的片外三I/O 端口是单片机与外界联系的重要8 P0 16 P0 8P2 8 PSEN ALERD WR EA P3 口。
单片机原理及应用(徐泳龙主编)第2版课后参考答案

《单片机原理及应用》习题答案第一章计算机基础知识1-1 微型计算机主要由哪几部分组成?各部分有何功能?答:一台微型计算机由中央处理单元(CPU)、存储器、I/O接口及I/O设备等组成,相互之间通过三组总线(Bus):即地址总线AB、数据总线DB和控制总线CB 来连接。
CPU由运算器和控制器组成,运算器能够完成各种算术运算和逻辑运算操作,控制器用于控制计算机进行各种操作。
存储器是计算机系统中的“记忆”装置,其功能是存放程序和数据。
按其功能可分为RAM和ROM。
输入/输出(I/O)接口是CPU与外部设备进行信息交换的部件。
总线是将CPU、存储器和I/O接口等相对独立的功能部件连接起来,并传送信息的公共通道。
1-3 什么叫单片机?其主要由哪几部分组成?答:单片机(Single Chip Microcomputer)是指把CPU、RAM、ROM、定时器/计数器以及I/O接口电路等主要部件集成在一块半导体芯片上的微型计算机。
1-4 在各种系列的单片机中,片内ROM的配置有几种形式?用户应根据什么原则来选用?答:单片机片内ROM的配置状态可分四种:(1)片内掩膜(Mask)ROM型单片机(如8051),适合于定型大批量应用产品的生产;(2)片内EPROM型单片机(如8751),适合于研制产品样机;(3)片内无ROM型单片机(如8031),需外接EPROM,单片机扩展灵活,适用于研制新产品;(4)EEPROM(或Flash ROM)型单片机(如89C51),内部程序存储器电可擦除,使用更方便。
1-5 写出下列各数的另两种数制的表达形式(二、十、十六进制)1-6 写出下列各数的BCD参与:59:01011001,1996:0001100110010110,4859.2:0100100001011001.0010 389.41:001110001001.01000001第二章MCS-51单片机的硬件结构2-1 8052单片机片内包含哪些主要逻辑功能部件?答: 8052单片机片内包括:①8位中央处理器CPU一个②片内振荡器及时钟电路③256B数据存储器RAM。
《单片机原理及应用》课后习题答案

答案:ALE是地址锁存使能信号,是机器周期的二倍。当不使用单字节双周期的指令,如MOVX类指令时,可以作为外部设备的定时信号。
2.13 有那几种方法能使单片机复位?复位后各寄存器的状态如何?复位对内部RAM有何影响?
2.6 8051如何确定和改变当前工作寄存器组?
2.7 MCS-51单片机的程序存储器中0000H、0003H、000BH、0013H、001BH和0023H这几个地址具有什么特殊的功能?
2.8 8051单片机有哪几个特殊功能寄存器?可位寻址的SFR有几个?
2.9 程序状态寄存器PSW的作用是什么?常用标志有哪些位?作用是什么?
TH1、TL1、TH0、TL0的内容为00H,定时器/计数器的初值为0。
(TMOD)=00H,复位后定时器/计数器T0、T1为定时器方式0,非门控方式。
(TCON)=00H,复位后定时器/计数器T0、T1停止工作,外部中断0、1为电平触发方式。
(T2CON)=00H,复位后定时器/计数器T2停止工作。
可位寻址的SFR有11个。
2.9 程序状态寄存器PSW的作用是什么?常用标志有哪些位?作用是什么?
答案:PSW—程序状态字。主要起着标志寄存器的作用。常用标志位及其作用如下:
Cy——进(借)位标志,其主要作用是保存算术运算的进或借位并在进行位操作时做累加器。
在执行某些算术和逻辑指令时,可以被硬件或软件置位或清零。在算术运算中它可作为进位标志,在位运算中,它作累加器使用,在位传送、位与和位或等位操作中,都要使用进位标志位。
2.14 MCS-51的时钟振荡周期、机器周期和指令周期之间有何关系?
单片机原理及应用总结

单片机原理及应用第一章绪论1.什么叫单片机?其主要特点有哪些?在一片集成电路芯片上集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,即单片机。
特点:控制性能和可靠性高、体积小、价格低、易于产品化、具有良好的性价比。
第二章80C51的结构和原理1.80C51的基本结构a.CPU系统●8位CPU,含布尔处理器;●时钟电路;●总线控制逻辑。
b.存储器系统●4K字节的程序存储器(ROM/EPROM/FLASH,可外扩至64KB);●128字节的数据存储器(RAM,可外扩至64KB);●特殊功能寄存器SFR。
c.I/O口和其他功能单元●4个并行I/O口;●2个16位定时/计数器;●1个全双工异步串行口;●中断系统(5个中断源,2个优先级)2.80C51的应用模式a.总线型单片机应用模式◆总线型应用的“三总线”模式;◆非总线型应用的“多I/O”模式3.80C51单片机的封装和引脚a.总线型DIP40引脚封装●RST/V PO:复位信号输入引脚/备用电源输入引脚;●ALE/PROG:地址锁存允许信号输出引脚/编程脉冲输入引脚;●EA/V PP:内外存储器选择引脚/片内EPROM编程电压输入引脚;●PSEN:外部程序存储器选通信号输出引脚b.非总线型DIP20封装的引脚●RST:复位信号输入引脚4.80C51的片内存储器增强型单片机片内数据存储器为256字节,地址范围是00H~FFH。
低128字节的配情况与基本型单片机相同。
高128字节一般为RAM,仅能采用寄存器间接寻址方式询问。
注意:与该地址范围重叠的特殊功能寄存器SFR 空间采用直接寻址方式询问。
5.80C51的时钟信号晶振周期为最小的时序单位。
一个时钟周期包含2个晶振周期。
晶振信号12分频后形成机器周期。
即一个机器周期包含12个晶振周期或6个时钟周期。
6.80C51单片机的复位定义:复位是使单片机或系统中的其他部件处于某种确定的初始状态。
第3章指令系统

单片机原理 及接口技术
第3 章
89C51单片机指 89C51单片机指 令系统
LOGO
LOGO
程序设计举例
一 二 三 四 五 六
简单程序设计举例 分支程序 循环程序 子程序设计举例 代码转换程序设计举例 运算类程序设计举例
BACK
LOGO
一、 简单程序设计举例
例1 :拆字。将片内RAM 20H单元的内容拆成两段,每段 拆字。将片内RAM 20H单元的内容拆成两段 单元的内容拆成两段, 四位。并将它们分别存入21H 22H单元中 程序如下: 21H与 单元中。 四位。并将它们分别存入21H与22H单元中。程序如下:
练习: 练习: 1.将片外RAM 2000H单元开 始的20个字节,传送到片 内RAM 30H单元开始的单元 中去。 2.将片内RAM 20H单元开始 的10个字节,传送到片内 RAM 30H单元开始的单元中 去。 3.将片内RAM BK1单元开始 的COUNT个字节,传送到片 外RAM BK2单元开始的单元 中去。
Back
LOGO
3.4
思考题与习题
1. 简述下列基本概念: 指令、指令系统、机器语言、汇编语言、高级 语言。 2. 什么是计算机的指令和指令系统? 3. 简述89C51汇编指令格式。 4. 简述89C51的寻址方式和所能涉及的寻址空间。 5. 要访问特殊功能寄存器和片外数据存储器,应采用哪些寻址方式?
单片机原理及接口技术(第3章)

第3章 MCS-51单片机的指令系统
① 操作码部分:以助记符表示,助记符用英语单词的缩写, 表明该指令的功能,如MOV表明该指令是一条数据传送指 令,ADD表明该指令是一条加法指令。
② 书写格式:操作码和操作数要用空格分开,如果指令中有 多项操作数,操作数之间要用“,”分开。方括号[ ]表 示该项是可选项, 可有可无。
单片机原理与接口技术 第3章
第3章 MCS-51单片机的指令系统
3.1 指令格式和寻址方式 3.1.1指令格式 1.指令格式
每条指令由操作码和操作数两部分组成。 操作码表示计算机将进行何种操作。 操作数表示参加操作的数或操作数所在的地址。 有无操作数、单操作数、双操作数三种情况。 汇编语言指令格式为: [标号:] 操作码助记符 [目的操作数] [,源操作数] [;注释]
(5)16位数据传送指令 MOV DPTR,#data16 ;将一个16位数送入DPTR中。 功能:把16位常数送入DPTR中。
高位立即数送入DPH,低位立即数送入DPL中。 (6)堆栈操作指令 PUSH direct ;将直接地址中的数压入栈顶;
SP←(SP)+1;(SP)←(direct)。 POP direct ;将栈顶中的数据弹出到直接地址;
例如:
MOV A,R6 ; A←(R6),将寄存器R6中的内容送到累加器A。
MOV A,30H ; A←(30),将内部RAM30H单元的内容送到累加器A。
MOV A,@R0 ; A←((R0)),将内部RAM中R0的内容为地址的单
元的内容送到累加器A。
MOV A,#40H
; A←40H,将立即数40H送给累加器A。
功能:将累加器A的低4位和R0或R1间址的存储单元的低4位
单片机原理及应用

单片机原理及应用教案福建省三明工贸学校机电技术应用第一章绪论第一节单片机单片机即单片机微型计算机,是将计算机主机(CPU、内存和I/O接口)集成在一小块硅片上的微型机。
第二节单片机的历史与现状第一阶段(1976~1978年):低性能单片机的探索阶段。
以Intel公司的MCS-48为代表,采用了单片结构,即在一块芯片内含有8位CPU、定时/计数器、并行I/O口、RAM 和ROM等。
主要用于工业领域。
第二阶段(1978~1982年):高性能单片机阶段,这一类单片机带有串行I/O口,8位数据线、16位地址线可以寻址的范围达到64K字节、控制总线、较丰富的指令系统等。
这类单片机的应用范围较广,并在不断的改进和发展。
第三阶段(1982~1990年):16位单片机阶段。
16位单片机除CPU为16位外,片内RAM和ROM容量进一步增大,实时处理能力更强,体现了微控制器的特征。
例如Intel 公司的MCS-96主振频率为12M,片内RAM为232字节,ROM为8K字节,中断处理能力为8级,片内带有10位A/D转换器和高速输入/输出部件等。
第四阶段(1990年~):微控制器的全面发展阶段,各公司的产品在尽量兼容的同时,向高速、强运算能力、寻址范围大以及小型廉价方面发展。
第三节单片机的应用领域一、单片机在仪器仪表中的应用二、单片机在机电一体化中的应用三、单片机在智能接口和多机系统中的应用四、单片机在生活中的应用第二章硬件结构第一节MCS-51单片机及其演变特点(1)一个8位微处理器CPU。
(2)数据存储器RAM和特殊功能寄存器SFR。
(3)内部程序存储器ROM。
(4)两个定时/计数器,用以对外部事件进行计数,也可用作定时器。
(5)四个8位可编程的I/O(输入/输出)并行端口,每个端口既可做输入,也可做输出。
(6)一个串行端口,用于数据的串行通信。
(7)中断控制系统。
(8)内部时钟电路。
第二节80C51单片机的基本结构1) 中央处理器(CPU)中央处理器是单片机的核心,完成运算和控制功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DJNZ R2, Start RET
; (R2) -1 → R2, 再转到Start处 ; 子程序返回
三、调用和返回指令(4条)
主程序
第一次调用
断点A
第二次调用
断点B
第一次返回 第二次返回
子程序
两个问题:
1)调用时,如何将当 前PC值改为子程序首 地址。
RET
2)返回时,如何将当 前PC值改为断点处地 址。
注释:(PC)+2 → PC;(Rn)-1→Rn [或(direct)-1→direct]; ① 若(Rn)≠0 [或(direct)≠0] ,则(PC)+ rel→PC ; ② 否则,结束循环,程序顺序往下执行。
(1) rel为一个字节的带符号二进制补码。 (2)地址偏移可用标号代替,如:DJNZ R0, LOOP;
注意:子程序首地址须与该指令后第一字节地址在同一 2KB范围内。
三、调用和返回指令(4条)
2、长调用指令 (3字节)
LCALL addr16
; 先(PC)+3 → PC,断点值
;(SP)+1 → SP
;(PC0~7)→(SP) ;(SP)+1 → SP
压入断点
;(PC8~15)→(SP)
; addr160~15→ PC0~15
先(PC)+3 → PC,再将目的操作数与源操作数相比较。 (1)若相等,则顺序执行,且0 →Cy; (2)若不相等,则(PC)+ rel→PC,同时,若目的操作数 > 源操作数,则 0 →Cy; 否则, 1 →Cy。
二、循环转移指令(2条)
它属于条件转移类指令。
1. DJNZ Rn, rel 2. DJNZ direct, rel
一、知识回顾 无条件转移指令(4条)
1、长转移指令 LJMP addr16 ; addr16 → PC。
注:addr16及LOOP的取值为0~FFFFH。
2、短转移指令 AJMP addr11 ; 先(PC)+2 → PC,
; 再 addr11 →PC0~10 ,(PC11~15)不变。
注:目标NZ rel ; 先(PC)+2 → PC,
注:当A ≠ 0时,(PC)+ rel→PC ;当A=0时,则顺序执行。
一、知识回顾 条件转移指令(6条)
2、比较转移指令
CJNE CJNE CJNE CJNE
注释:
A, #data, rel A, direct, rel @Ri, #data, rel Rn, #data, rel
MOV A, @R0 MOV @R1, A
; ((R0)) → A,(A) = (20H) ; (A) → (R1),((R1)) = (20H),
; (60H) = (20H)
INC R0
; (R0) +1 → R0, (R0) = 21H
INC R1
; (R1) +1 → R1, (R1) = 61H
(2)位逻辑“或”指令 ① ORL C,bit ; C (C)∨(bit) ② ORL C,/bit ; C (C)∨(/bit)
四、位操作指令
4、位条件转移类指令(5 条)
(1)判C转移指令 JC rel ;(Cy)=“1”就跳转;否则不跳转。 JNC rel ;(Cy)“1”就跳转;否则不跳转。
四、位操作指令
1、位传送指令(2条) (1)MOV C, bit ;C (bit)
(2)MOV bit, C ;bit (C) 注:
① C 即 Cy; ② bit 表示位地址。
即:可位寻址区(00H~7FH)及11个特殊功能寄存器。
四、位操作指令
2、位修正指令(6 条)
(1)位清零指令
① CLR C ; C 0
或 DJNZ 20H,LOOP。
二、循环转移指令
例1:请编出将RAM内 20H ~ 2FH 中的数据传到 60H ~ 6FH 的程序。
ORG 1000H
Start: MOV R2, #16 ; 16 → R2
MOV R0, #20H ; 20H → R0
MOV R1, #60H ; 60H → R1
注:目标地址64KB范围内,该指令具有散转功能。
一、知识回顾 空操作指令(1条)
NOP ;(PC)+1 → PC。
注:常用于产生一个机器周期的延时。
条件转移指令(6条) 1、判零转移指令 (1) JZ rel ; 先(PC)+2 → PC,
注:当A=0时,(PC)+ rel→PC ;当A≠0时,则顺序执行。
跳转过程为:
先(PC)+2 → PC,再(PC)+ rel → PC 。
四、位操作指令
4、位条件转移类指令
主程序调用子程序及返回示意图
三、调用和返回指令(4条)
1、短调用指令 (2字节)
ACALL addr11
; 先(PC)+2 → PC,断点值
;(SP)+1 → SP
;(PC0~7)→(SP) ;(SP)+1 → SP
压入断点
;(PC8~15)→(SP) ; addr110~10→ PC0~10,PC11~15不变
注意:采用该指令可在64KB范围内调用子程序。
三、调用和返回指令(4条)
3、返回指令
(1)子程序调用返回指令:RET (2)中断服务程序返回指令:RETI
注释: ① ((SP)) → PC8~15,弹出断点高 8 位; ② (SP) - 1 → SP; ③ ((SP)) → PC0~7,弹出断点低 8 位; ④ (SP) - 1 → SP。
② CLR bit ; bit 0
(2)位置“1”指令 ① SETB C ; C 1
② SETB bit
(3)位取反指令 ① CPL C
; bit 1 ; C (/C)
② CPL bit ; bit (/bit)
四、位操作指令
3、位逻辑运算指令(4 条)
(1)位逻辑“与”指令 ① ANL C,bit ; C (C)∧(bit) ② ANL C,/bit ; C (C)∧(/bit)
一、知识回顾 无条件转移指令(4条)
3、相对转移指令 SJMP rel ; 先 (PC)+2 → PC, ; 再 (PC)+ rel → PC 。
注:目标地址须在SJMP指令后第一字节开始的前 128字节至后127字节范围内。
4、间接转移指令 JMP @A+DPTR ;(DPTR)+(A)→PC 。