MCS-51单片机的指令时序
第02章 MCS-51单片机的结构

CY
AC
F0
RS1 RS0
OV
/
P
PSW位地址
D7H D6H D5H D4H CY AC F0 RS1
D3H RS0
D2H D1H OV
D0H P
CY:进位标志。用于表示Acc.7有否向更高位进位。 加减运算时,保存最高位进位、借位状态。 AC:半进位标志。用于表示Acc.3有否向Acc.4进位。 例:78H+97H 0111 1000 +1001 0111 1 0000 1111
ALU
定时与控制 程序地址寄存器AR
CPU
。
2.2.2 控制器
控制器由程序计数器PC、指令
寄存器和指令译码器、定时和控
制逻辑电路。
相对控制器而言,运算器接受控 制器的命令而进行动作。
1).程序计数器PC
※ PC不属于特殊功能寄存器,不可访问,在物理结构 上是独立的。 ※ 16位的地址寄存器,用于存放下一字节指令的地址, 可寻址64KB的程序存储器空间。 ※ PC的基本工作方式有:
⑴ 自动加1。CPU从ROM中每读一个字节,自动执行 PC+1→PC; ⑵ 执行转移指令时,PC会根据要求修改地址; ⑶ 执行调用子程序或发生中断时,CPU会自动将当前 PC值压入堆栈,将子程序入口地址或中断入口地址装入 PC;子程序返回或中断返回时,恢复原有被压入堆栈的 PC值,继续执行原顺序程序指令。
用示波器检测该引脚来判断单片机是否损坏。
② PROG功能:片内有EPROM的芯片,在EPROM编程 期间,此引脚输入编程脉冲。
⑵ PSEN:片外程序存储器读选通信号输出端。 在向片外程序存储器读取指令或常数期间,每个机
器周期该信号两次有效(低电平)作为片外ROM的
mcs_51的指令表

2
#data8
8位立即数送入间接RAM单元
#00H~#FFH
2
1
MCS-51单片机指令表(共111条指令)
表D.1 8位数据传送指令
表D.2 16位数据的传送类指令
助记符
功能说明
寻址范围
字节数
机器周期
MOV DPTR,#data16
16位立即数地址送入数据指针寄存器
0000H~FFFFH
3
2
表D.3外部数据传送类指令
直接地址单元内容与累加器内容交换
00H~FFH
2
1
@Ri
间接RAM内容与累加器内容交换
(R0~R7) , 00H~FFH
1
1
MOVC A,@A+DPTR
以DPTR为基地址变址寻址单元中的数据送入A
0000H~FFFFH
1
2
MOVC A,@A+PC
以PC为基地址变址寻址单元中的数据送入A
PC向下00H~FFH
堆栈中的数据弹出到到直接地址单元
2
2
NOP
空操作
1
1
表D.10位操作类指令
助记符
功能说明
字节数
机器周期
CLR C
清进位位
1
1
CLR bit
清直接地址位
2
1
SETB C
置进位位
1
1
SETB bit
置直接地址位
2
1
CPL C
进位位求反
1
1
CPL bit
直接地址位求反
2
1
ANL C,bit
进位位内容与直接地址位内容相与
3
单片机原理 第2章 MCS-51单片机体系结构

2.4.2 MCS-51单片机数据存储器
2.4.2 MCS-51单片机数据存储器
1. 工作寄存器区
字节地址为00H~1FH的32个单元是4组通用工作寄存器区,每组占用8个 字节,都标记为R0~R7。在某一时刻,CPU只能使用其中的一组工作寄存 器,工作寄存器的选择由程序状态字寄存器PSW中RS1、RS0两位来确定 ,如表2-3所示。
2. 数据总线DB 数据总线宽度为8位(D0~D7),由P0提供。
3. 控制总线CB 控制总线由P3口的第二功能状态和4根独立控制线RESET、 和ALE组成。
2.3 MCS-51单片机的中央处理器
• 8051系列单片机的中央处理器CPU是单片机 的指挥中心和执行机构,它的作用是产生合适的 时序,读入和分析每条指令代码,根据每条指令 代码的功能要求,指挥并控制单片机的有关部件 和器件,具体执行指定的操作。
2.2.3 并行I/O引脚
3. P2口
P2口,为准双向I/O口,具有内部上拉电阻。一共8位,有P2.0~P2.7共8 条引脚。当8051系列单片机扩展外部存储器及I/O接口芯片时,P2口作为 地址总线(高8位),和P0输出的低8位地址一起构成16位地址,可以寻址 64KB的地址空间。
P2口位结构图如图2-3 (c)所示,它比P1口多了 一个转换控制部分,当P2 与P0配合作为“地址/数据总 线”方式下的高8位数据线 (A8~A15)时,CPU将写 控制信号“1”使MUX切换到 右边,在“地址/数据总线” 方式下,无论P2口剩余多 少地址线,均不能被用于 普通I/O操作。
(2)控制引脚—— 、
MCS-51系列单片机的指令系统和汇编语言程序

3·1 汇编指令第3 章MCS 一51 系列单片机的指令系统和汇编语言程序3·1·1 请说明机器语言、汇编语言、高级语言三者的主要区分,进一步说明为什么这三种语言缺一不行。
3·1·2 请总结:(1)汇编语言程序的优缺点和适用场合。
(2)学习微机原理课程时,为什么肯定要学汇编语言程序?3·1·3MCS 一51 系列单片机的寻址方式有哪儿种?请列表分析各种寻址方式的访问对象与寻址范围。
3·1·4 要访问片内RAM,可有哪几种寻址方式?3·1·5 要访问片外RAM,有哪几种寻址方式?3·1·6 要访问ROM,又有哪几种寻址方式?3·1·7 试按寻址方式对MCS 一51 系列单片机的各指令重进展归类(一般依据源操作数寻址方式归类,程序转移类指令例外)。
3·1·8 试分别针对51 子系列与52 子系列,说明MOV A,direct 指令与MOV A,@Rj 指令的访问范围。
3·1·9 传送类指令中哪几个小类是访问RAM 的?哪几个小类是访问ROM 的?为什么访问ROM 的指令那么少?CPU 访问ROM 多不多?什么时候需要访问ROM?3·1·10 试绘图示明MCS 一51 系列单片机数据传送类指令可满足的各种传送关系。
3·1·11 请选用指令,分别到达以下操作: (1)将累加器内容送工作存放器R6.(2)将累加器内容送片内RAM 的7BH 单元。
(3)将累加器内容送片外RAM 的7BH 单元。
(4)将累加器内容送片外RAM 的007BH 单元。
(5)将ROM007BH 单元内容送累加器。
3·1·12 区分以下指令的不同功能:(l)MOV A,#24H 与MOV A.24H(2)MOV A,R0 与MOV A,@R0(3)MOV A,@R0 与MOVX A,@R03·1·13 设片内RAM 30H 单元的内容为40H;片内RAM 40H 单元的内容为l0H;片内RAM l0H 单元的内容为00H;(Pl)=0CAH。
MCS-51指令及编码表

机器周期数 1 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 2
指令助记符 NOP AJMP LJMP RR INC INC INC INC INC INC INC INC INC INC INC INC JBC ACALL LCALL RRC DEC DEC DEC DEC DEC DEC DEC DEC DEC DEC EDC EDC JB
机器周期数 1 1 1 2 2 2 2 1 2 1 1 1 1 1 1 1 1 1 1 2 2 2 2 4 2 1 1 1 1 1 1 1 1 1 1 2 2 2
指令助记符 XRL XRL XRL JNZ ACALL ORL JMP MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV SJMP AJMP ANL MOVC DIV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV ACALL MOV
操作数 A,@R1 A,R0 A,R1 A,R2 A,R3 A,R4 A,R5 A,R6 A,R7 bit,rel code addr11 direct,A direct,#data A,#data A,direct A,@R0 A,@R1 A,R0 A,R1 A,R2 A,R3 A,R4 A,R5 A,R6 A,R7 bit,rel code addr11 direct,A direct,#data A,#data A,direct A,@R0 A,@R1 A,R0 A,R1 A,R2 A,R3 A,R4
6
续表 机器码 [H] DE DF E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 EA EB EC ED EE EF F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF
第2章MCS--51系列单片机的结构及原理

(4)工作寄存器组选择位RS1、RS0(PSW.4,
PSW.3): RS1、RS0与工作寄存器组的对应关系
如下:
RS1 RS0 工作寄存器组 片内RAM地址
00
第0组
00H~07H
01
第1组
指令执行后,A=D1H最高位无进位,故C=0;低半字节有进位,AC=1; OV=0 1=1,发生溢出;A中1的个数为偶数,故P=0。
CPU时序
一.振荡器
CPU执行指令的一系列动作是在时序电路的控制下一拍一拍进行的。 其节拍信号由振荡器产生,MCS--51系列单片机的内部有一个高增益的反 相放大器。外接晶体后可构成自激振荡器产生节拍信号,接法见图2-1, 也可使用片外振荡器,采用不同工艺制造的单片机芯片接法不同:
RST/VPO:双功能引脚,在单片机工作期间, 当此引脚上出现连接2个机器周期的高电平时可 实现复位操作,详见2.4节。
在Vcc掉电期间,若该引脚接备用电源 (+5v),可向片内RAM供电,以保存片内RAM中 的信息。
2.2 MCS—51系列单片机的微处理器与CPU时序
运算器由算逻运算单元ALU、累加器A、B寄存器、暂存器1、 暂存器2、及程序状态字PSW构成。程序状态字PSW是1个8位 的专用寄存器,用于存放程序运行中的各种状态信息,可 进行位寻址,
P
图2—3 程序状态字各位的含义
(1)进位标志C(PSW.7);很多算术逻辑运算指令执行 后都会影响进位标志C。例如加减运算,若运算结果有进 位或借位,则C=1,若无,则C=0。可用专门的指令或硬件 将C置位或清零,在进行位操作时,C又起着位累加器的作 用,类似于累加器A。
MCS-51系列单片机的结构及原理
阻。P1口可驱动4个LSTTL门电路。
第2章 MCS-51系列单片机的结构及原理
图2-4 P1口的位结构图
第2章 MCS-51系列单片机的结构及原理
(2) P1口其他功能。
P1口在EPROM编程和验证程序时输入低8位地址;在 8032/8052系列中P1.0和P1.1是多功能的,P1.0可作定时器/计数 器2的外部计数触发输入端T2,P1.1可作定时器/计数器2的外部 控制输入端T2EX。 3) P2口——准双向口 P2口(P2.0~P2.7,21~28脚)的位结构如图2-5所示,引脚 上拉电阻同P1口。在结构上,P2口比P1口多一个输出控制部分。
第2章 MCS-51系列单片机的结构及原理
图2-3 P0口的位结构图来自第2章 MCS-51系列单片机的结构及原理
(1) P0口作地址/数据复用总线使用。
若从P0口输出地址或数据信息,此时控制端应为高电平, 转换开关MUX将反相器输出端与输出级场效应管V2接通,同 时与门开锁,内部总线上的地址或数据信号通过与门去驱动V1 管,又通过反相器去驱动V2管,这时内部总线上的地址或数据 信号就传送到P0口的引脚上。例如,若地址/数据为0时,该信 号一方面通过与门使V1截止,另一方面,在控制信号作用下, 该信号经反相器使V2导通,从而在引脚上输出0信号;反之, 若地址/数据为1时,将会使V1导通,V2截止,引脚输出1信号。 工作时低8位地址与数据线分时使用P0口。低8位地址由ALE信 号的负跳变使它锁存到外部地址锁存器中,而高8位地址由P2
第2章 MCS-51系列单片机的结构及原理
4个并行I/O端口作为通用I/O口使用时,共有写端口、读端
口和读引脚三种操作方式。写端口实际上就是输出数据,是将 累加器A或其他寄存器中的数据传送到端口锁存器中,然后经 输出锁存器自动从端口引脚线上输出。读端口不是真正地从外 部输入数据,而是将端口锁存器中的输出数据读到CPU的累加 器。读引脚才是真正的输入外部数据的操作,是从端口引脚线 上读入外部的输入数据。端口的上述三种操作实际上是通过指 令或程序来实现的,这些将在以后的章节中详细介绍。
单片机的工作方式
无 取 指 读 下 一 个 操 作 码
S 1 S 2 S 3 S 4 S 5 S 6 S 1 S 2 S 3 S 4 S 5 S 6
( d ) 单 字 节 双 周 期 指 令 , 如 M O V X
地 址
数 据
访 问 外 部 存 储 器
图2.12 MCS-51单片机取指、执行时序
1.3 单片机的低功耗方式
读 操 作 码
读 下 一 个 操 作 码 ( 丢 弃 )
读 下 一 个 操 作 码
S 1 S 2 S 3 S 4 S 5 S 6 S 1 S 2 S 3 S 4 S 5 S 6
( c ) 单 字 节 双 周 期 指 令 , 如 I N C D P T R
读 操 作 码
读 下 一 个 操 作 码 ( 丢 弃 ) 无 取 指 , 无 A L E
+5V
CR
R1 R2
RST 8051 8751 8031
图2.10 上电复位电路
CPU在第二个机器周期内执行内部复位操作,以后每个机 器周期重复一次,直至RST端电平变低。在单片机复位期间, AlE和 信号都不产生。复位操作将对部分专用寄存器产生 影响 。
1.2 时钟电路和时序
1. 时钟电路
根据硬件电路的不同,单片机的时钟连接方式可分为内 部时钟方式和外部时钟方式,如图2.11所示。
对于MCS-51系列机型来说,它们有待机方式和掉电保护 方式两种低功耗方式。通过设置电源控制寄存器PCON的相关 位可以确定当前的低功耗方式。PCON寄存器格式如下:
位序
B7
B6 B5
B4
B3
B2
B1
B0
位符号 SMOD /
/
/ GF1 GF0 PD IDL
单片机基础电子教案
复位值 0000H 00H 00H 00H 07H 0000H FFH XXX00000B 0XX00000B 00H 00H 00H 00H 00H 00H 00H 不定 0XXX0000B
2.4 MCS-51单片机的低功耗工作方式
一、 电源控制存放器PCON
D7
D6
D5
D4
D3
D2
D1
D0
PCON
SCON.7~SCON.0
TCON.7~TCON.0
AFH~A8H BFH~B8H 87H~80H 97H~90H A7H~A0H B7H~B0H
9FH~98H
8FH~88H
〔1〕 P0口位的结构 图 2 5 P0口的位结构
〔2〕 P1口位的结构
图 26 P1口的位结构
图 2 6 P1口的位结构
1.1 单片机的开展概况
• 综上所述,我们可以把单片机的开展历史划分为四阶段: • 第一阶段〔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年~〕:微控制器的全面开展阶段,各公司的产品在尽量 兼容的同时,向高速、强运算能力、寻址范围大以及小型廉价方面开展。
单片机试卷及答案分析
A卷一、填空题(本题共20分,每空1分)1.8051单片机片片内有程序存储器_________字节, 片内有数据存储器________字节。
2.MCS-51单片机片内有个中断源,其中个外部中断源。
3.MCS-51单片机片内RAM中位寻址区是从地址到的一块存储区域。
4.MCS-51单片机片内DPTR寄存器是一个位寄存器。
5.DA指令的作用是 _____________。
6.MCS-51单片机片内有______个16位定时/计数器, 它们具有_________种工作方式。
7.ADC0809是__________通道8位______________________。
DAC0832是______位D/A转换器。
8.假定(SP)=60H,(ACC)=30H,(B)=70H,执行下列指令:PUSH ACCPUSH B后,SP的内容为 62H ____,61H单元的内容为 30H ___,62H单元的内容为 70H 。
9.MCS-51单片机工作寄存器组共分为 __组寄存器,每组有个单元。
10.为扩展存储器而构造系统总线,应以P0口的8位口线作为线,以P2口的口线作为。
二、单项选择题(本题共10分,每小题1分)1.下列运算对OV没有影响或不受OV影响的的运算是()。
(A)逻辑运算(B)加减运算(C)乘法运算(D)除法运算2.在寄存器间接寻址方式中,寄存器中存放的是()。
(A)操作数(B)操作数地址(C)转移地址(D)地址偏移量3.如在系统中只扩展一片2764,除应使用P0口的8条口线外,至少还应使用P2口的口线()(A)2条(B)3条(C)4条(D)5条4.寻址空间为外部程序存储器所用的指令是()。
(A)MOVX (B)MOV (C)MOVC (D)ADDC5.PC的值是()。
(A)当前指令前一条指令的首地址 (B)当前正在执行指令的首地址(C)下一条指令的首地址 (D)控制器中指令寄存器的地址 6.执行中断返回指令,从堆栈弹出地址送给()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
www.china.com EDonline
本资料来源于网络,所有权归原作者所有,仅供个人学习交流之用
下载更多电子开发资料>>>www.china.com 中国电子开发在线 ED為Electronic Development的縮寫,意為電子開發! EDonline
www.china.com EDonline
本资料来源于网络,所有权归原作者所有,仅供个人学习交流之用
下载更多电子开发资料>>>www.china.com 中国电子开发在线 EDonline
MCS-51单片机的指令时序
时序是用定时单位来描述的,MCS-51的时序单位有四个,它们分别是节拍、状态、机器周期
和指令周期,接下来我们分别加以说明。
·节拍与状态:
我们把振荡脉冲的周期定义为节拍(为方便描述,用P表示),振荡脉冲经过二分频后即得
到整个单片机工作系统的时钟信号,把时钟信号的周期定义为状态(用S表示),这样一个
状态就有两个节拍,前半周期相应的节拍我们定义为1(P1),后半周期对应的节拍定义为
2(P2)。
·机器周期:
MCS-51有固定的机器周期,规定一个机器周期有6个状态,分别表示为S1-S6,而一个状态
包含两个节拍,那么一个机器周期就有12个节拍,我们可以记着S1P1、S1P2……S6P1、S6P2,
一个机器周期共包含12个振荡脉冲,即机器周期就是振荡脉冲的12分频,显然,如果使用
6MHz的时钟频率,一个机器周期就是2us,而如使用12MHz的时钟频率,一个机器周期就是
1us。
·指令周期:
执行一条指令所需要的时间称为指令周期,MCS-51的指令有单字节、双字节和三字节的,所
以它们的指令周期不尽相同,也就是说它们所需的机器周期不相同,可能包括一到四个不等
的机器周期(这些内容,我们将在下面的章节中加以说明)。
·MCS-51的指令时序:
MCS-51指令系统中,按它们的长度可分为单字节指令、双字节指令和三字节指令。执行这些
指令需要的时间是不同的,也就是它们所需的机器周期是不同的,有下面几种形式:
·单字节指令单机器周期
·单字节指令双机器周期
·双字节指令单机器周期
·双字节指令双机器周期
·三字节指令双机器周期
·单字节指令四机器周期(如单字节的乘除法指令)
下图是MCS-51系列单片机的指令时序图:
www.china.com EDonline
本资料来源于网络,所有权归原作者所有,仅供个人学习交流之用
下载更多电子开发资料>>>www.china.com 中国电子开发在线 上图是单周期和双周期取指及执行时序,图中的ALE脉冲是为了锁存地址的选通信号,显然,每出现一次该信号单片机即进行一次读指令操作。从时序图中可看出,该信号是时钟频率6分频后得到,在一个机器周期中,ALE信号两次有效,第一次在S1P2和S2P1期间,第二次在S4P2和S5P1期间。 接下来我们分别对几个典型的指令时序加以说明。 ·单字节单周期指令: 单字节单周期指令只进行一次读指令操作,当第二个ALE信号有效时,PC并不加1,那么读出的还是原指令,属于一次无效的读操作。 ·双字节单周期指令: 这类指令两次的ALE信号都是有效的,只是第一个ALE信号有效时读的是操作码,第二个ALE信号有效时读的是操作数。 ·单字节双周期指令: 两个机器周期需进行四读指令操作,但只有一次读操作是有效的,后三次的读操作均为无效操作。 单字节双周期指令有一种特殊的情况,象MOVX这类指令,执行这类指令时,先在ROM中读取指令,然后对外部数据存储器进行读或写操作,头一个机器周期的第一次读指令的操作码为有效,而第二次读指令操作则为无效的。在第二个指令周期时,则访问外部数据存储器,这时,ALE信号对其操作无影响,即不会再有读指令操作动作。 上页的时序图中,我们只描述了指令的读取状态,而没有画出指令执行时序,因为每条指令都包含了具体的操作数,而操作数类型种类繁多,这里不便列出,有兴趣的读者可参阅有关书籍。 ·外部程序存储器(ROM)读时序 EDonline
www.china.com EDonline
本资料来源于网络,所有权归原作者所有,仅供个人学习交流之用
下载更多电子开发资料>>>www.china.com 中国电子开发在线 右图8051外部程序存储器读时序图,从图中可看出,P0口提供低8位地址,P2口提供高8位地址,S2结束前,P0口上的低8位地址是有效的,之后出现在P0口上的就不再是低8位的地址信号,而是指令数据信号,当然地址信号与指令数据信号之间有一段缓冲的过度时间,这就要求,在S2其间必须把低8位的地址信号锁存起来,这时是用ALE选通脉冲去控制锁存器把低8位地址予以锁存,而P2口只输出地址信号,而没有指令数据信号,整个机器周期地址信号都是有效的,因而无需锁存这一地址信号。 从外部程序存储器读取指令,必须有两个信号进行控制,除了上述的ALE信号,还有一个PSEN(外部ROM读选通脉冲),上图显然可看出,PSEN从S3P1开始有效,直到将地址信号送出和外部程序存储器的数据读入CPU后方才失效。而又从S4P2开始执行第二个读指令操作。 ·外部数据存储器(RAM)读时序 右图8051外部数据存储器读写时序图,从ROM中读取的需执行的指令,而CPU对外部数据存储的访问是对RAM进行数据的读或写操作,属于指令的执行周期,值得一提的是,读或写是两个不同的机器周期,但他们的时序却是相似的,我们只对RAM的读时序进行分析。 上一个机器周期是取指阶段,是从ROM中读取指令数据,接着的下个周期才开始读取外部数据存储器RAM中的内容。 在S4结束后,先把需读取RAM中的地址放到总线上,包括P0口上的低8位地址A0-A7和P2口上的高8位地址A8-A15。当RD选通脉冲有效时,将RAM的数据通过P0数据总线读进CPU。第二个机器周期的ALE信号仍然出现,进行一次外部ROM的读操作,但是这一次的读操作属于无效操作。 对外部RAM进行写操作时,CPU输出的则是WR(写选通信号),将数据通过P0数据总线写入外部存储中。 EDonline
www.china.com EDonline
本资料来源于网络,所有权归原作者所有,仅供个人学习交流之用
下载更多电子开发资料>>>www.china.com 中国电子开发在线 EDonline