421.3MCS51单 (一)中央处理器( ACC CPU由运算器和 TMPI TMP2 核心,完成运算和控 1.运算器 内部总线 组成:算术逻辑运算器ALU,算术累加器ACC,寄存器 B,暂存器TMP1,暂存器TMP2,布尔累加器Cy等。 功能:进行移位、算术运算和逻辑运算;MCS-51运算 器还包含有一个布尔(位)处理器,用来处理位操作
11 (一) 中央处理器(CPU) CPU由运算器和控制器组成,它是单片机的 核心,完成运算和控制操作。 2.1.3 MCS-51单片机的内部结构 1. 运算器 TMP1 TMP2 ALU PSW ACC TMP1 TMP2 ALU PSW ACC 运算器 内部总线 组成:算术逻辑运算器ALU,算术累加器ACC,寄存器 B,暂存器TMP1,暂存器TMP2,布尔累加器Cy等。 功能:进行移位、算术运算和逻辑运算;MCS-51运算 器还包含有一个布尔(位)处理器,用来处理位操作
213MCS51单片机的内部结构 (1)累加器A(ACC)(8位) 功能:暂存操作数及保存运算结果; A是MCS-51单片机中最繁忙的寄存器; (2)寄存器B(8位) 功能:用于乘法、除法运算,对于其它指令可作为 个寄存器使用; (3)程序状态字寄存器PSW(8位) 功能:存放累加器A在运算过程标志位(P,OV,AC Cy)的状态;指出CPU所使用的当前王作寄存器组
12 (1)累加器A(ACC)(8位) 功能:暂存操作数及保存运算结果; A是MCS-51单片机中最繁忙的寄存器; (2)寄存器B(8位) 功能:用于乘法、除法运算,对于其它指令可作为一 个寄存器使用; (3 )程序状态字寄存器PSW(8位) 功能:存放累加器A在运算过程标志位(P,OV,AC, Cy)的状态;指出CPU所使用的当前工作寄存器组。 2.1.3 MCS-51单片机的内部结构
21.3MCS51单片机的内部结构 程序状态字寄存器 PSW.7PSW6 PSW.5 SWO PSW CY AC FO RSI RS CY(PSW7)进位/借位标志位Cary) 若ACC在运算过程中发生了进位或借位,则CY=1;否 则=0。它也是布尔处理器的位累加器,可用于布尔操作。 >AC(PSW6)半进位借位标志位 Attached Carry 若AC在运算过程中,D3位向D4位发生了进位或借位, 则AC=1.否则=0。 >FO(PSW5)——用户标志位( Flag c: user definable flag) 13
13 CY AC F0 RS1 RS0 OV P PSW.7 PSW.0 ➢ CY (PSW.7) 进位/借位标志位(Carry)。 若ACC在运算过程中发生了进位或借位,则CY=1;否 则=0。它也是布尔处理器的位累加器,可用于布尔操作。 ➢ AC(PSW.6)半进位/借位标志位(Attached Carry)。 若AC在运算过程中,D3位向D4位发生了进位或借位, 则AC=1,否则=0。 ➢ F0 (PSW.5) ——用户标志位(Flag 0: user definable flag)。 PSW.6 PSW.5 2.1.3 MCS-51单片机的内部结构 PSW 程序状态字寄存器
21.3MCS-51单片机的内部结构 程序状态字寄存器 PSW.7 PSW.4 PSW.3 PSW.O PSW CY AC FO RSI RSOOV P RS1,RS0工作寄存器组选择位( Register Selection) RS1RS0=00选择工作寄存器组0区,R0~R7分别代表08H-OFH单元。 RS1RS0=01选择工作寄存器组1区,R0R7分别代表08H~OFH单元。 RS1RS0=10选择工作寄存器组2区,R0~R7分别代表10H-17H单元。 RS1RS0=11选择工作寄存器组3区,R0~R7分别代表18H~FH单元
RS1,RS0 = 1 1 选择工作寄存器组 3 区, R0~R7分别代表18H~1FH单元。 14 2.1.3 MCS-51单片机的内部结构 PSW.7 PSW.0 RS1, RS0工作寄存器组选择位(Register Selection)。 RS1,RS0 = 0 1 选择工作寄存器组 1 区, R0~R7分别代表08H~0FH单元。 RS1,RS0 = 1 0 选择工作寄存器组 2 区, R0~R7分别代表10H~17H单元。 CY AC F0 RS1 RS0 OV P PSW.4 PSW.3 RS1,RS0 = 0 0 选择工作寄存器组 0 区, R0~R7分别代表08H~0FH单元。 PSW 程序状态字寄存器
213MCS51单片机的内部结构 程序状态字寄存器 PSW. PSW.2 PSW.1 PSW.0 PSW Cr AC FO RSI RS00v-P O(PSW2)溢出标志位( Overflow) OV=1:累加器在进行带符号数-128+127)运算时出错 (超出范围);OV=0:未出错。 PSWl未定义 Reserved) P(PSW0)奇偶标志位( Parity Bit) P=1:累加器ACC中“1的个数为奇数 P=0:累加器ACC中“1”的个数为偶数 CPU随时监视着ACC中的“1”的个数,并反映在PSW中5
15 CY AC F0 RS1 RS0 OV P PSW.7 PSW.0 OV (PSW.2)溢出标志位(Overflow)。 OV=1:累加器在进行带符号数(-128—+127)运算时出错 (超出范围);OV=0:未出错。 PSW.1 未定义(Reserved)。 P (PSW.0)奇偶标志位(Parity Bit)。 P=1:累加器ACC中“1”的个数为奇数 P=0:累加器ACC中“1”的个数为偶数 CPU随时监视着ACC中的“1”的个数,并反映在PSW中 PSW.2 PSW.1 2.1.3 MCS-51单片机的内部结构 PSW 程序状态字寄存器