MCS-8051单片机原理

本文详细介绍了MCS-51系列单片机的内部结构,包括CPU、存储器、输入/输出口等核心组件,以及指令执行流程、内部存储器的类型与管理,为读者提供了全面的单片机知识概览。

内部结构

在这里插入图片描述
MCS-51 系列单片机主要由以下部件通过片内总线连接而成:中央处理器(CPU)、数据存储器(RAM)、程序存储器(ROM)、并行输入/输出口(P0 口~P3 口)、串行口、定时器/计数器、中断控制、总线控制及时钟电路。

CPU的组成

CPU 是单片机的核心部件,由运算器和控制器组成,用以进行各种算术和逻辑运算,
并实现数据的传送。
运算器包括算术逻辑单元部件 ALU(Arithmetic and Logic Unit)、位处理器、8 位累加器 A、寄存器 B、两个 8 位暂存寄存器 TMP1 和 TMP2 及程序状态字寄存器 PSW(8 位)等。ALU 不仅可以实现 8 位数据的加、减、乘、除、增量、减量、十进制调整、比较等算术运算和与、或、异或、求补等逻辑运算,同时还具有一般微机所不具备的位处理功能,可对位变量进行置位、清零、求补及与、或等操作。控制器是 CPU 的神经中枢,它识别指令并根据指令性质协调单片机内部各组成单元自动协调地工作。主要包括程序计数器 PC、PC 增量器、指令寄存器、指令译码器、定时及控制逻辑电路等。其功能是以主振频率为基准产生时钟信号,向单片机内部各组成单元发出各种微控制信号,控制指令的读入、译码和执行,并对指令执行过程进行定时和逻辑控制。

指令执行的基本步骤

必须先在存储器中载入程序,单片机才可以开始工作。所谓程序,就是为了完成某项工作,将一系列指令有序地组合,而指令则是要求单片机执行某种操作的命令。指令分为操作码和地址码两部分。操作码部分规定了单片机的操作类型;而地址码部分一般是直接或间接地给出了参与操作的数据的存放地址,所以地址码也可以称为操作数。单片机执行一条指令一般分为两个步骤:取指令阶段和指令执行阶段。CPU 从程序存储器中取出指令操作码,送到指令寄存器,再经指令译码器译码,产生一系列控制信号,以明确该指令执行什么样的操作,以及操作数的存放地址,根据这个地址获取操作数,这是取指令阶段;然后 CPU 按操作码指明的操作类型对获取的操作数进行操作(也可称为运算),这是指令执行阶段。
那么 CPU 如何完成取指令和执行指令操作的全过程呢?
CPU 复位后,程序计数器 PC 会自动地指向第一条指令存放的存储单元的首地址(16位 PC 中的内容总是 CPU 将要执行的那条指令所在的存储单元的首地址)。在控制信号的控制下,CPU 从该存储单元中取出指令,暂存在指令寄存器中。指令的操作码部分进入指令译码器译码,译码结果通知控制电路发出相应的控制信号来控制 CPU 各部件,以完成这条指令的操作。指令的地址码部分送往操作数地址形成电路,以便形成实际的操作数地址,然后 CPU 再通过总线从该地址所在单元取出操作数送入暂存寄存器,从暂存寄存器送入算术逻辑运算部件 ALU 中。运算结果送指令所指定的单元,同时将运算结果的有关状态送入程序状态字寄存器 PSW 中。指令的实际执行过程比上述要复杂的多,并且所有的操作都是在精确的时序控制下进行的。在学习时需要注意以下两点:
1)PC 是一个有自动加 1 功能的 16 位计数器。CPU 从存储单元取指令的过程中,每取一个字节的内容,程序计数器 PC 就自动加 1。在取完这条指令后,PC 中的内容就是下一条要执行的指令所在存储单元的首地址了。PC 没有地址,是不可寻址的,因此,用户不能对它进行读和写操作。
2)以上是 CPU 顺序执行指令的

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值