80C51单片机的内部结构
单片机按存储结构可分为二类:一类是哈佛结构,另一类是普林斯顿结构。
①哈佛结构
所谓哈佛结构是指程序存储器地址空间与数据存储器地址空间分开的单片机结构,如80C51单片机采用哈佛结构,所以80C51单片机的程序存储器地址空间与数据存
储器地址空间是分开的,各有64K存储空间。
②普林斯顿结构
所谓普林斯顿结构是指程序存储器地址空间与数据存储器地址空间合并的单片机结构,如MCS-96单片机采用普林斯顿结构,所以MCS-96单片机的程序存储器地址空
间与数据存储器地址空间是合并的,共有64K存储空间。
图1是80C51单片机的内部结构框图。若除去图中的存储器电路和I/O部件,剩下的便是CPU。它可以分为运算器和控制器两部分。运算器功能部件包括算术逻辑运
算单元ALU、、寄存器B、暂存寄存器TMP1、TMP2、程序状态字寄存器PSW等。控制器功能部件包括程序计数器PC、指令寄存器IR、指令译码器ID、定时控制逻辑
电路CU、数据指针寄存器DPTR、堆栈指针SP及时钟电路等。
(1)运算器
①算术逻辑运算单元ALU(Arithmetic Logical Unit)
ALU可以进行算术、逻辑运算。算术运算有:加、减、乘、除,逻辑运算有:与、或、异或等。
②
的主要功能是在运算前存放一个操作数,运算后存放一个操作结果。80C51系列单片机虽然在结构上仍然以累加器A作为重要部件。但由于内部电路采取
了措施,使得累加器A在数据传送、逻辑操作等方面的核心作用有所削弱。数据可以在片内直接/间接地址的存储器之间直接传送,而不必经过累加器A。但,加、减、乘、
除算术运算指令的运算结果都存放在累加器A或AB寄存器对中。
③暂存器TMP1、TMP2
由图1可知,ALU进行算术逻辑运算前的两个操作数来自暂存器TMP1、TMP2,所以暂存器TMP1、TMP2用于存放运算前的两个操作数。
④程序状态字寄存器PSW
程序状态字寄存器PSW用来存放运算结果的状态标志。PSW寄存器各位的含义如下,,其它各位说明如下:
CY
AC
F0
RS1
RS0
OV
/
P
CY:进位标志。它是累加器A的进位位,如果操作结果在最高位有进位(加法)或借位(减法)时置1,否则清0。
AC:半进位标志。它是低半字节的进位位(累加器A中A3位向A4位的进位),主要用于BCD码调整。低4位有进位(加法时)或向高4位有借位时(减法时),AC是
1,否则,AC清0。
F0:用户定义的状态标志位。可通过软件对它置位、复位或测试,以控制程序的流向。
RS1、RS0:工作寄存器区选择控制位,用于选择4组工作寄存器之一。可以用软件来置位或清零,以确定工作寄存器区。RS1、RS0与寄存器区的对应关系如
80c51单片机的内部结构 来自淘豆网m.daumloan.com转载请标明出处.