微机原理总复习-2011.ppt
《微机原理总复习-2011.ppt》由会员分享,可在线阅读,更多相关《微机原理总复习-2011.ppt(77页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第 1 1 章章 复复 习习1.18051单片机的特点与基本结构单片机的特点与基本结构8051系列系列无片内无片内ROM型型带片内带片内ROM型型片内片内EPROM型型:87C51,4k片内片内EEROM型型:89C51,4k,flash片内掩膜片内掩膜ROM型型:8051,4k一次编程一次编程:80318051单片机的基本组成包括:单片机的基本组成包括:中央处理器中央处理器CPU,它是单片机的核心,用于产生各种控制信号,它是单片机的核心,用于产生各种控制信号,并完成对数据的算术逻辑运算和传送;并完成对数据的算术逻辑运算和传送;内部数据存储器内部数据存储器RAM,用以存放可以读写的数据;,用
2、以存放可以读写的数据;内部程序存储器内部程序存储器ROM,用以存放程序指令或某些常数表格;,用以存放程序指令或某些常数表格;4个个8位的并行位的并行I/O接口接口P0,P1,P2和和P3,每个口都可以用做输入,每个口都可以用做输入或者输出;或者输出;内部时钟,但晶体和微调电容需要外接,振荡频率可以高达内部时钟,但晶体和微调电容需要外接,振荡频率可以高达40MHZ.234中中央处理器中中央处理器CPU包含运算器和控制器两大部分。包含运算器和控制器两大部分。1运算器运算器运算器以算术逻辑单元运算器以算术逻辑单元ALU为核心,加上累加器为核心,加上累加器ACC、寄存器、寄存器B、暂存寄存器、暂存寄存
3、器TMP和程序状态字寄存器和程序状态字寄存器PSW等所组成。等所组成。ALU主要用于完成二进制数据的算术和逻辑运算。主要用于完成二进制数据的算术和逻辑运算。累加器累加器ACC工作最为繁忙工作最为繁忙,因为在进行算术逻辑运算时,因为在进行算术逻辑运算时,ALU的输入多为的输入多为ACC的输出,而大多数运算结果也需要送到的输出,而大多数运算结果也需要送到ACC中。中。B寄存器,在作乘除运算时用来存放一个操作数,它也用来存放寄存器,在作乘除运算时用来存放一个操作数,它也用来存放乘除运算后的一部分结果乘除运算后的一部分结果。程序状态字寄存器程序状态字寄存器PSW,用于存放运算结果的一些特征,用于存放运
4、算结果的一些特征进位标志进位标志辅助进位标志辅助进位标志用户标志用户标志工作寄存器组选择工作寄存器组选择溢出标志溢出标志奇偶校验标志奇偶校验标志52控制器控制器控制器包括定时控制逻辑、指令寄存器、指令译码器、程序计控制器包括定时控制逻辑、指令寄存器、指令译码器、程序计数器数器PC、数据指针、数据指针DPTR、堆栈指针、堆栈指针SP、地址寄存器和地址缓冲、地址寄存器和地址缓冲器等。器等。它的功能是对逐条指令进行译码,并通过定时和控制电路在规定它的功能是对逐条指令进行译码,并通过定时和控制电路在规定的时刻发出各种操作所需的内部和外部控制信号,协调各部分的工的时刻发出各种操作所需的内部和外部控制信号
5、,协调各部分的工作。作。程序计数器程序计数器PC:用于存放下一条将要执行指令的地址。当一条指用于存放下一条将要执行指令的地址。当一条指令按令按PC所指向的地址从程序存储器中取出之后,所指向的地址从程序存储器中取出之后,PC的值会自动增的值会自动增加,即指向下一条指令加,即指向下一条指令。PC不属于特殊功能寄存器,不能被访问。不属于特殊功能寄存器,不能被访问。堆栈指针堆栈指针SP:用来指示堆栈的起始地址。:用来指示堆栈的起始地址。指令译码器:当指令送入指令译码器后,由译码器对该指令进行译指令译码器:当指令送入指令译码器后,由译码器对该指令进行译码,即把指令转变成为所需要的电平信号,码,即把指令转
6、变成为所需要的电平信号,CPU根据译码器输出的根据译码器输出的电平信号使定时控制电路产生执行该指令所需要的各种控制信号。电平信号使定时控制电路产生执行该指令所需要的各种控制信号。61.28051单片机的存储器结构单片机的存储器结构8051单片机在物理上它有单片机在物理上它有4个存储器空间:片内程序存储器(个存储器空间:片内程序存储器(4k)和片外程序存储器;片内数据存储器和片外数据存储器。和片外程序存储器;片内数据存储器和片外数据存储器。图图1.58051单片机存储器结构单片机存储器结构78051单片机通过不同的信号来选通单片机通过不同的信号来选通ROM或或RAM。当从外部。当从外部ROM中取
7、指令时,中取指令时,用选通信号用选通信号PSEN,而从外部,而从外部RAM中读写中读写数据时则采用读写信号数据时则采用读写信号RD或或WR来选通,来选通,因此不会因地址重叠而发生混乱。因此不会因地址重叠而发生混乱。8051系列单片机的系列单片机的片内数据存储器片内数据存储器RAM有有256个字节,其中个字节,其中00H-7FH地址空间是直地址空间是直接寻址区,该区域内接寻址区,该区域内00H-1FH地址为工作寄地址为工作寄存器区,安排了存器区,安排了4组工作寄存器,每组占用组工作寄存器,每组占用8个地址单元,记为个地址单元,记为R0-R7,在某一时刻,在某一时刻,CPU只能使用其中任意一组工作
8、寄存器,究只能使用其中任意一组工作寄存器,究竟选择哪一组工作寄存器由程序状态字寄存竟选择哪一组工作寄存器由程序状态字寄存器器PSW中中RS0和和RS1的状态决定。的状态决定。片内片内RAM的的20H-2FH地址单元为位寻址地址单元为位寻址区区,共,共16个字节,每个字节的每一位都规定个字节,每个字节的每一位都规定了位地址,该区域内每个地址单元除了可以了位地址,该区域内每个地址单元除了可以进行字节操作之外,还可进行位操作,右图进行字节操作之外,还可进行位操作,右图所示为片内所示为片内RAM的位地址分配。的位地址分配。8P0.0-P0.7(39-32):双向双向I/O口口P0。其第二功能是在访问外
9、部存储器。其第二功能是在访问外部存储器时,时,可分时用做低可分时用做低8位地址和位地址和8位数据线位数据线。P0口能以口能以吸收电流吸收电流的方式的方式驱动驱动8个个LS型型TTL负载负载。P1.0-P1.7(1-8):双向双向I/O口口P1。P1口能驱动(吸收或输出电流)口能驱动(吸收或输出电流)4个个LS型型TTL负载负载。P2.0-P2.7(21-28):双向双向I/O口口P2。P2口可以驱动(吸收或输出电流)口可以驱动(吸收或输出电流)4个个LS型型TTL负载负载。其第二功能是在访问外部存储器时,。其第二功能是在访问外部存储器时,输出高输出高8位位地址。地址。P3.0-P3.7(10-
10、17):双向:双向I/O口口P3。P3口能驱动(吸收或输出电流)口能驱动(吸收或输出电流)4个个LS型型TTL负载负载。P3口的每条引脚都有各自的第二功能口的每条引脚都有各自的第二功能。9第第 3 3 章章 指令系统指令系统复习复习2414ADDA,#14H;累加器累加器A中的内容与中的内容与14H相加相加3.1指令助记符和字节数指令助记符和字节数指令本身是一组二进制数代码,助记符一般采用有关英文单词指令本身是一组二进制数代码,助记符一般采用有关英文单词的缩写的缩写。740AMOVA,#0AH;将十六进制数将十六进制数0AH放入累加器放入累加器A中中指令指令助记符助记符一条指令通常由两部分组成
11、:操作码和操作数。一条指令通常由两部分组成:操作码和操作数。操作码用来规定这条指令完成什么操作。操作数则表示这条指操作码用来规定这条指令完成什么操作。操作数则表示这条指令所完成的操作对象,即是对谁进行操作。令所完成的操作对象,即是对谁进行操作。操作码操作码操作数操作数11在在8051单片机中,对于不同的指令,指令的字节数不相同。单片机中,对于不同的指令,指令的字节数不相同。8051单片机有单字节,双字节或三字节指令。单片机有单字节,双字节或三字节指令。1、单字节指令单字节指令:指令只有一个字节,操作码和操作数同在一个:指令只有一个字节,操作码和操作数同在一个字节中。在字节中。在80C51系列的
12、指令系统中,共有系列的指令系统中,共有49条单字节指令。条单字节指令。操作码操作码+地址码地址码如如MOVA,Rn指令机器码为单字节指令机器码为单字节,其中,其中rrr可表可表示为示为000111,分别代表,分别代表R0R7(1)单字节指令中既包含操作码信息,也包含操作数信息。)单字节指令中既包含操作码信息,也包含操作数信息。例如数据指针加例如数据指针加1指令:指令:INCDPTR,由于操作的内容和对象都,由于操作的内容和对象都很明确,故不必再加操作数字节,其指令码为:很明确,故不必再加操作数字节,其指令码为:(2)用一个字节中的几位来表示操作数或操作数所在的位置。)用一个字节中的几位来表示操
13、作数或操作数所在的位置。11101rrr1010001112例如例如把把8位二进制数传送到累加器位二进制数传送到累加器A的指令:的指令:MOVA,#data其中其中#data表示表示8位二进制数,也叫立即数,这就是双节指令,其指位二进制数,也叫立即数,这就是双节指令,其指令码为:令码为:01110100#data2双字节指令双字节指令:其中一个字节为操作码,另一个字节是操作数。:其中一个字节为操作码,另一个字节是操作数。操作码操作码数据或地址码数据或地址码在在80C51系列的指令系统中,共有系列的指令系统中,共有45条双字节指令。条双字节指令。133.三字节指令则是一个字节的操作码,两个字节的
14、操作数。操作数三字节指令则是一个字节的操作码,两个字节的操作数。操作数可以是数据,也可以是地址,因此,可能有四种情况:可以是数据,也可以是地址,因此,可能有四种情况:操作码操作码立即数立即数立即数立即数操作码操作码操作码操作码操作码操作码地地址址立即数立即数立即数立即数地地址址地地址址地地址址8051单片机共有单片机共有17条三字节指令,只占全部指令的条三字节指令,只占全部指令的15%。一般。一般而言,指令的字节数越则其执行速度越快,从这个角度来说,而言,指令的字节数越则其执行速度越快,从这个角度来说,8051单片机的指令系统是比较合理的。单片机的指令系统是比较合理的。ANLdirect,#d
15、ataMOVDPTR,#1234H143.2寻址方式寻址方式所谓寻址,就是所谓寻址,就是寻找操作数据的地址寻找操作数据的地址。例如:例如:MOVA,R0所谓寻址方式就是通过确定操作数据所在的地址把操作数据提所谓寻址方式就是通过确定操作数据所在的地址把操作数据提取出来的方法。取出来的方法。在在8051单片机中,有单片机中,有7种寻址方式:种寻址方式:1寄存器寻址寄存器寻址2直接寻址直接寻址3立即寻址立即寻址4寄存器间接寻址寄存器间接寻址5变址寻址变址寻址6相对寻址相对寻址7位寻址位寻址目的字节源字节153.3指令分类详解指令分类详解算术运算类指令(算术运算类指令(24条);条);逻辑运算类指令(
16、逻辑运算类指令(25条)条);数据传送类指令(数据传送类指令(28条)条);控制转移类指令控制转移类指令(17条条);布尔操作(位)类指令(布尔操作(位)类指令(17条)。条)。8051单片机共有单片机共有111条指令,按指令功能可分为算术运算指令、条指令,按指令功能可分为算术运算指令、逻辑运算指令、数据传送指令、控制转移指令及位操作指令等逻辑运算指令、数据传送指令、控制转移指令及位操作指令等5大大类。类。163.3.1算术运算指令算术运算指令算术运算指令包括加、减、乘、除法指令,加法指令又分为普算术运算指令包括加、减、乘、除法指令,加法指令又分为普通加法指令、带进位加法指令和加通加法指令、带
17、进位加法指令和加1指令。指令。1普通加法指令普通加法指令ADDA,Rn;Rn(n=0-7)为工作寄存器为工作寄存器,指令意义指令意义(A)+(Rn)(A)ADDA,#data;#data为立即数为立即数,指令意义指令意义(A)+data(A)这组指令的功能是将累加器这组指令的功能是将累加器A的内容与第二操作数的内容相加,的内容与第二操作数的内容相加,结果送回到累加器结果送回到累加器A中。中。在执行加法的过程中,如果位在执行加法的过程中,如果位7有进位,则置有进位,则置“1”进位标志进位标志CY,否则清,否则清“0”CY。如果位。如果位3有进位,则置有进位,则置“1”辅助进位标志辅助进位标志AC
18、。如果位如果位6有进位而位有进位而位7没有进位,或者位没有进位,或者位7有进位而位有进位而位6没有进位,则没有进位,则置置“1”溢出标志溢出标志OV,否则清,否则清“0”OV。172带进位加法指令带进位加法指令ADDCA,Rn;指令意义指令意义(A)+(Rn)+(CY)(A)ADDCA,direct;direct为直接地址单元为直接地址单元ADDCA,#data;#data为立即数为立即数这组指令的功能与普通加法指令类似,唯一的这组指令的功能与普通加法指令类似,唯一的不同之处是在执不同之处是在执行加法时,还要将上一次进位标志行加法时,还要将上一次进位标志CY的内容也一起加进去的内容也一起加进去
19、。对于。对于标志位的影响与普通加法指令相同。标志位的影响与普通加法指令相同。例:设(例:设(A)C3H,(,(R0)AAH,(,(CY)1。执行指令:执行指令:ADDCA,R011000011+10101010+1(CY)01101110执行结果:(执行结果:(A)6EH,(CY)1,(,(OV)l,(AC)0。183加加1指令指令INCA不影响任何标志。不影响任何标志。5带进位减法指令带进位减法指令SUBBA,Rn;Rn(n=0-7)。指令意义。指令意义(A)(Rn)(CY)(A)6减减1指令指令DECA7单字节乘法指令单字节乘法指令MULAB8单字节除法指令单字节除法指令DIVAB乘积的低
20、乘积的低8位存放在累加器位存放在累加器A中,高中,高8位存放在寄存器位存放在寄存器B中。中。商的整数部分存放在累加器商的整数部分存放在累加器A中,余数部分存放在寄存器中,余数部分存放在寄存器B中中193.3.2逻辑运算指令逻辑运算指令逻辑运算指令分为简单逻辑操作指令、逻辑与指令、逻辑或指逻辑运算指令分为简单逻辑操作指令、逻辑与指令、逻辑或指令以及逻辑异或指令。令以及逻辑异或指令。1简单逻辑指令简单逻辑指令CLRA;对累加器;对累加器A清清“0”,不影响标志位。,不影响标志位。SWAPA;将;将A的高半字节(的高半字节(A.7-A.4)与低半字节(与低半字节(A.3-A.0)交换交换CPLA;对
21、进行累加器的内容逐位取反,结果仍存在对进行累加器的内容逐位取反,结果仍存在A中。中。RLA;累加器;累加器A的内容向左环移一位的内容向左环移一位RLCA;累加器;累加器A的内容带进位位的内容带进位位CY向左环移一位向左环移一位RRA;累加器;累加器A的内容向右环移一位的内容向右环移一位RRC;累加器;累加器A的内容带进位位的内容带进位位CY向右环移一位向右环移一位2逻辑与指令逻辑与指令ANLA,Rn3逻辑或指令逻辑或指令ORLA,Rn4逻辑异或指令逻辑异或指令XRLA,Rn202逻辑与指令逻辑与指令ANLA,Rn;(A)(Rn)A,n=0-7ANLA,direct;(A)(direct)AAN
22、LA,Ri;(A)(Ri)A,i=0或或1ANLA,#data;(A)#dataA例:设(例:设(A)A3H(10100011B),(R0)AAH(10101010B)。)。执行指令执行指令:ANLA,Rn执行结果为(执行结果为(A)A2H(10100010B)。ANLdirect,#data;(direct)#datadirect这条指令的功能是将两个操作数的内容按位进行逻辑与运算,这条指令的功能是将两个操作数的内容按位进行逻辑与运算,结果送入由结果送入由direct所指出的内部所指出的内部RAM单元。单元。21ORLA,Rn;(A)V(Rn)A,n=0-7ORLA,direct;(A)V(
23、direct)AORLA,#data;(A)V#dataAORLdirect,A;(direct)V(A)directORLdirect,#data;(direct)V#datadirect3逻辑或指令逻辑或指令这组指令的功能是将两个操作数的内容按位进行逻辑或运算,这组指令的功能是将两个操作数的内容按位进行逻辑或运算,结果送入累加器结果送入累加器A或由或由direct所指出的内部所指出的内部RAM单元单元。4逻辑异或指令逻辑异或指令XRLA,Rn;(A)(Rn)A,n=0-7XRLA,direct;(A)(direct)AXRLA,Ri;(A)(Ri)A,i=0或或1例:设(例:设(A)A3H
24、(10100011B),),(R0)45H(01000101B)。)。执行指令:执行指令:ORLA,R0执行结果:(执行结果:(A)E7H(11100111B)。0 0=0,1 1=00 1=1,1 0=1223.3.3数据传送指令数据传送指令8051单片机的存储器区域可分为如下单片机的存储器区域可分为如下3个部分,即:个部分,即:程序存储器程序存储器0000H-FFFFH内部内部RAM00H-FFH外部外部RAM/IO区区0000H-FFFFH对于程序存储器对于程序存储器ROM,只能通过变址寻址方式采用,只能通过变址寻址方式采用MOVC指令指令访问。访问。外部数据存储器外部数据存储器RAM只
25、能通过间接寻址方式用只能通过间接寻址方式用MOVX指令访问。指令访问。1数据传送到累加器数据传送到累加器A的指令的指令MOVA,Rn;n=0-7MOVA,directMOVA,Ri;i=0或或1MOVA,#data这组指令的功能是把源操作数的内容送入累加器这组指令的功能是把源操作数的内容送入累加器A。234堆栈操作指令堆栈操作指令PUSHdirect;进栈;进栈POPdirect;出栈;出栈在在8051单片机的特殊功能寄存器中有一个堆栈指针寄存器单片机的特殊功能寄存器中有一个堆栈指针寄存器SP,进栈(进栈(PUSH)指令的功能是首先将堆栈指针)指令的功能是首先将堆栈指针SP的内容加的内容加1,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 复习 2011
限制150内