MCS-51单片机总体概述(一)

MCS-51单片机总体概述(一)

  • 前言
  • 1. MCS-51的总体结构
  • 2. MCS-51的CPU
    • 2.1 运算器
    • 2.2 控制器
  • 3. MCS-51的存储器结构
    • 3.1 程序存储器
    • 3.2 数据存储器

前言

由于考研复试要考单片机,所以想借此机会来复习下单片机知识,主要参考书籍是华中科技大学出版社出版的《单片微型计算机原理与应用》,本书主要讲述的是MCS-51单片机。

1. MCS-51的总体结构

MCS-51单片机的结构框图如下:
MCS-51单片机总体概述(一)_第1张图片

2. MCS-51的CPU

MCS-51单片机内部具有一个8位的CPU,作为单片机的指挥和执行机构,它包括运算器和控制器。

2.1 运算器

算数逻辑运算部件ALU:它完成各种算数运算和逻辑运算,包括对8位数据的加、减、乘、除及逻辑与、或、异或、取反等运算,以及循环移位、位操作等。
累加器ACC:8位寄存器,通过暂存器与ALU相连。它是工作最频繁的寄存器。在算术运算和逻辑运算时,累加器A存放一个参加操作的数,作为ALU的输入,而ALU的运算结果又存入A中。在变址寻址中,A作为变址寄存器使用。
寄存器B:一般用于乘、除法指令,与A配合使用。运算前,B中存放乘数或除数,运算后,B中保存乘积的高位字节或商的余数部分,此外,B还可以作为存放中间结果的暂存寄存器。
程序状态字寄存器PSW
在这里插入图片描述
P: 奇偶标志位。其内容取决于A中含1的个数的奇偶性,奇数个时置1,否则为0.
OV: 溢出标志位,带符号数加减运算时,如果发生溢出,则置1,否则,置0.溢出表示为结果超出计数范围,例如8位带符号数的计数范围是-128 ~ +127。进位与溢出是不同的,进位是正常运算的结果,而溢出是错误结果。可用算式OV=D7C ⊕ \oplus D6c计算。
F0: 用户标志位。可以在写程序时当作标志位。
AC: 半进位标志位。在进行加减法运算时,如果低半字节向高半字节有进位或借位时,AC置1,否则,置0.其可用于校正BCD码加法运算或减法运算的结果。
C: 进位标志位,有时表示为Cy。在进行加减法运算时,如果操作结果的最高位有进位,则置1,否则,置0.在进行位操作时,Cy作为位累加器C。循环移位指令和比较移位指令也会影响Cy标志。
RS0,RS1: 工作寄存器组指针,用以选择指令当前工作的寄存器组。编码方式如下:
PSW.1位未定义,但用户可以用伪指令BIT将PSW.1位定义为F1,如同F0一样,设定作为用户的软件标志位。

RS1 RS0 寄存器组 片内RAM地址
0 0 组0 00H ~ 07H
0 1 组1 08H ~ 0FH
1 0 组2 10H ~ 17H
1 1 组3 18H ~ 1FH

2.2 控制器

程序计数器PC:16位专用计数器,其内容表示下一条要执行的指令的16位地址,当一条指令取出后,PC就指向下一条指令的地址。改变PC的内容就可以改变指令执行的次序。复位为0000H。
堆栈指针SP:堆栈是为了子程序调用和中断操作而设立的。一般,堆栈是在内存RAM中开辟的一个特定的存储区,专门用来暂时存放数据或存放返回地址,并按照“先进后出”的原则进行操作。MCS-51单片机中的堆栈地址是07H ~ 7FH。栈底固定,栈顶浮动。进栈时SP加1,数据压入,出栈时,先弹出数据,SP再减1.SP复位时指向07H,但由于08H~1FH是工作寄存器1 ~ 3,故通常将SP的值改为1FH或更大。在中断或调用子程序时,断点地址自动进栈,程序返回时,断点地址自动弹回PC。
MCS-51单片机总体概述(一)_第2张图片
数据指针DPTR:是一个16位地址寄存器,作为间接寄存器使用。在变址寻址方式中,DPTR作基址寄存器,用于对程序寄存器的访问。它也可以分成高字节DPH和低字节DPL。
指令寄存器,指令译码器和CPU定时控制:用于读取指令,对指令进行译码,产生对应的电信号,再通过定时和控制电路,发出特定的时序信号,使计算机正确执行程序所要求的各种操作。

3. MCS-51的存储器结构

8051存储结构可以分为片内外统一编址的64K字节的程序存储器,片内256字节的数据存储器,片外64K字节的数据存储器地址空间。
MCS-51单片机总体概述(一)_第3张图片

3.1 程序存储器

在8051中,片内有4K字节的ROM,片外可扩展60K字节的EPROM,片内片外程序存储器统一编址。
当EA=1时,在PC的值在0000H ~ 0FFFFH时,执行片内ROM的程序,在1000H ~ FFFFH时,执行片外ROM的程序。
当EA=0时,PC在0000H ~ FFFFH时均执行片外ROM的程序。
在程序存储器中,有6个地址单元被保留用于某些特定的地址,通常在这些地址放置跳转指令以避免冲突,地址如下图所示:

入口地址 说明
0000H 复位后,PC=0000H
0003H 外部中断INT0入口
000BH 定时器 T0溢出中断入口
0013H 外部中断INT1入口
001BH 定时器 T1溢出中断入口
0023H 串行口中断入口

3.2 数据存储器

8051有片内数据存储器和片外数据存储器,片内和片外RAM独立编址,通过不同指令来访问,用MOV指令访问片内RAM,用MOVX指令访问片外RAM。
8051有21个特殊功能寄存器,离散地分布在80H ~ FFH范围内。其中,SBUF,TH1,TH0,TL1,TL0,TMOD,PCON,DPL,DPH,SP只能按字节寻址,其余11个特殊功能寄存器,既可以按字节寻址,又可以按位寻址。
MCS-51单片机总体概述(一)_第4张图片

你可能感兴趣的:(嵌入式系统,嵌入式,单片机)