您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 单片机2-7章课后答案
第二章1.程序状态字寄存器PSW各位的定义是什么?PSW是一个8位寄存器,用于寄存当前指令执行后的某些状态,即反映指令执行结果的一些特征信息。Cy(PSW.7):即PSW的D7位,进位/借位标志。AC(PSW.6):即PSW的D6位,辅助进位标志。F0(PSW.5)及F1(PSE.1):即PSW的D5位、D1位,用户标志位。RS1及RS0(PSW.4及PSW.3):即PSW的D4位、D3位,寄存器组选择控制位。OV(PSW.2):即PSW的D2位,溢出标志。2.8051存储器结构的主要特点是什么?程序存储器和数据存储器各有何不同?8051单片机的存储器结构与一般微机存储器的配置方法不同,一般微机把程序和数据共存同一存储空间,各存储单元对应惟一的地址。而MCS-51的存储器把程序和数据的存储空间严格区分开。数据存储器用于存放程序运算的中间结果、状态标志位等。程序存储器用于存放已编制好的程序及程序中用到的常数。3.8051单片机内部RAM可分为几个区?各区的主要作用是什么?内部数据存储器分为高、低128B两大部分。低128B为RAM区,地址空间为00H~7FH,可分为:寄存器区、位寻址区、堆栈及数据存储区。存放程序运算的中间结果、状态标志位等。高128B为特殊功能寄存器(SFR)区,地址空间为80H~FFH,其中仅有21个字节单元是有定义的。4.在访问外部ROM或RAM时,P0和P2口各用来传送什么信号?P0口为什么要采用片外地址锁存器?P0口传送地址低八位后可复用数据线,所以,P0口要采用片外地址锁存器。P2口传送地址高八位。5.8051单片机有几种复位方法?复位后,CPU从程序存储器的哪一个单元开始执行程序?8051的复位电路包括上电复位电路和按键(外部)复位电路.0000H6.什么是时钟周期?什么是机器周期?什么是指令周期?当振荡频率为12MHz时,一个机器周期为多少微秒?时钟周期:也称振荡周期,即振荡器的振荡频率fosc的倒数,是时序中最小的时间单位。机器周期:执行一条指令的过程可分为若干个阶段,每一阶段完成一规定的操作,完成一个规定操作所需要的时间称为一个机器周期,一个机器周期包含12个时钟周期。当振荡频率为12MHz时,一个机器周期为12/(12×1000000)秒=1微秒指令周期:定义为执行一条指令所用的时间。7.8051单片机引脚ALE的作用是什么?当8051不外接RAM和ROM时,ALE上输出的脉冲频率是多少?其作用是什么?地址锁存使能输出ALE:当单片机访问外部存储器时,外部存储器的16位地址信号由P0口输出低8位,P2口输出高8位,ALE可用作低8位地址锁存控制信号;当不用作外部存储器地址锁存控制信号时,该引脚仍以时钟振荡频率的1/6固定地输出正脉冲,可以驱动8个LS型TTL负载。8.9.自己查书第三章1.8051有哪几种寻址方式?举例说明它们是怎样寻址的?MCS-51指令系统的寻址方式有以下7种:立即寻址方式:操作数直接出现在指令中。直接寻址方式中:操作数的单元地址直接出现在指令中。寄存器寻址方式中:寄存器中的内容就是操作数。寄存器间接寻址方式中,指定寄存器中的内容是操作数的地址,该地址对应存储单元的内容才是操作数。变址寻址方式是以程序指针PC或数据指针DPTR为基址寄存器,以累加器A作为变址寄存器,两者内容相加(即基地址+偏移量)形成16位的操作数地址,相对寻址是以程序计数器PC的当前值作为基地址,与指令中的第二字节给出的相对偏移量rel进行相加,所得和为程序的转移地址。位地址:内部RAM地址空间的可进行位寻址的128位和SFR地址空间的可位寻址的11个8位寄存器的88位。位寻址给出的是直接地址。2.位寻址和字节寻址如何区分?在使用时有何不同?由寻址方式可以看出,不同的寻址方式所寻址的存储空间是不同的。正确地使用寻址方式不仅取决于寻址方式的形式,而且取决于寻址方式所对应的存储空间。字节寻址必须是对8位存储单元,位寻址的存储空间只能是片内RAM的20H~2FH字节地址中的所有位(位地址为00H~7FH)和部分SFR的位,决不能是该范围之外的任何单元的任何位。3.要访问专用寄存器和片外数据寄存器,应采用什么寻址方式?举例说明。访问专用寄存器:可采用直接寻址或寄存器寻址。访问片外数据寄存器:寄存器间接寻址4.编程将内部RAM的30H单元的内容传送给外部RAM的2000H单元。MOVA,30HMOVDPTR,#2000HMOVX@DPTR,A5.编程将内部数据存储器20H~30H单元内容清零。MOVR0,#20HMOVA,#0MOVR3,#17LOP:MOV@R0,AINCR0DJNZR3,LOP6.已知A=83H,R0=17H,(17H)=34H,写出下列程序段执行完后的A中的内容。ANLA,#17HORL17H,AXRLA,@R0CPLA(A)=11001011B=0CBH7.MCS-51汇编语言中有哪些常用的伪指令?各起什么作用?END(结束汇编)EQU(等值)DB(定义字节)DW(定义字)ORG(汇编起始地址)8.下列程序段汇编后,从1000H开始各有关存储单元的内容是什么?ORG1000HTAB1:EQU1234HTAB2:EQU5678HDB65,13,abcABCDWTAB1,TAB2,9ABCH1000H:65H1001H:13H1002H:65H1003H:66H1004H:67H1005H:41H’1006H:42H1007H:43H1008H:55H1009H:59H100AH:87H100BH:56H100CH:9AH100DH:0BCH第四章1.编程查找内部RAM的32H~41H单元中是否有0AAH这个数据,若有这一数据,则将50H单元置为0FFH,否则清50H单元为0。MOVR3,#10HMOVA,#0AAHMOVR0,#31HLOP:INCR0SUBBA,@R0JZLOP1DJNZR3,LOPMOV50H,#0HAJMPLOP3LOP1:MOV50H,#0FFHLOP3:AJMP1OP32.查找20H~4FH单元中出现00H的次数,并将查找结果存入50H单元。MOVR3,#30HMOVR0,#20HMOVA,#0LOP:MOVA,@R0JZLOP1LOP3:INCR0DJNZR3,LOPAJMPLOP2LOP1:INC50HAJMPLOP3LOP2:AJMPLOP23.已知单片机的fosc=12MHz,分别设计延时0.1s、1s、1min的子程序。设晶振频率为12MHz,一个机器周期为1?s,延时1ms的子程序:执行时间(机器周期)DELAY:MOVR7,#0FFH1LOOP:NOP1NOP1DJNZR7,LOOP2RET2该程序段的总的执行时间为:(1+4×255+2)ms=1023?s≈1ms延时时间为100ms的子程序:DELAY:MOVR5,#64H对延时1ms的子程序循环100次。LOP1:MOVR7,#0FFHLOOP:NOPNOPDJNZR7,LOOPDJNZR5,LOP1RET延时时间为1s的子程序:DELAY1:MOVR3,#0AH对延时100ms的子程序循环10次DELAY:MOVR5,#64H。LOP1:MOVR7,#0FFHLOOP:NOPNOPDJNZR7,LOOPDJNZR5,LOP1DJNZR3,DELAYRET延时时间为60s的子程序:对延时1s的子程序循环60次4.试编写8字节外部数据存储器到内部数据存储器的数据块传送程序,外部数据存储器地址范围为40H~47H,内部数据存储器地址范围为30H~37H。MOVR3,#8MOVR0,#40HMOVR1,#30HLOP1:MOVXA,@R0MOV@R1,AINCR0INCR1DJNZR3,LOP15.试编写8字节外部程序存储器到内部数据RAM的传送程序,外部程序存储器地址为2040H~2047H,内部RAM地址为30H~37H。参看4题答案(提示:外部程序存储器地址为16位地址:2040H~2047H,间接寻址采用DPTR)6.试编程使内部RAM的20H~4FH单元的数据块按降序排列。参看23题答案(提示:本题对20H~4FH单元(48个)数据降序排列7.试编写一个用查表法查0~9字形7段码(假设表的首地址为TABLE)的子程序,调用子程序前,待查表的数据存放在累加器A中,子程序返回后,查表的结果也存放在累加器A中。SQR1:MOVDPTR,#TABLEMOVCA,@A+DPTRRETTABLE:DB0C0H,0F9H,0A4H,0B0H,99H;0~9的字形显示段码(LED共阳极。DB92H,82H,F8H,80H,90H8.内部RAM的20H单元开始有一个数据块,以0DH为结束标志,试统计该数据块长度,将该数据块传送到外部数据存储器7E01H开始的单元,并将长度存入7E00H单元。MOVR0,#20HMOVDPTR,#7E01HLOP:MOVA,@R0MOV60H,ASUBBA,#0DHJZLOP1MOVA,60HMOVX@DPTR,AINCR3INCR0INCDPTRAJMPLOPLOP1:MOVDPTR,#7E00HMOVA,R3MOVX@DPTR,AEND9.内部RAM的DATA开始的区域中存放着10个单字节十进制数,求其累加和,并将结果存入SUM和SUM+1单元。MOVR0,#DATAMOVR3,#0AHMOVA,#0LOP:ADDA,@R0MOVR4,AADDCA,#0MOVR5,AINCR0DJNZR3,LOPMOVSUM,R4MOVSUM+1,R5END10.内部RAM的DATA1和DATA2单元开始存放着两个等长的数据块,数据块的长度在LEN单元中。请编程检查这两个数据块是否相等,若相等,将0FFH写入RESULT单元,否则将0写入RESULT单元。MOVR0,#DATA1MOVR3,LENLOP:MOVA,@R0CJNZA,DATA2,LOP1INCR0INCDATA2DJNZR3,LOPMOVA,#0FFHMOVRESULT,AAJMPLOP2LOP1:MOVA,#0MOVRESULT,ALOP2:AJMPLOP2END第五章无第六章1.8051系列单片机能提供几个中断源、几个中断优先级?各个中断源的优先级怎样确定?在同一优先级中,各个中断源的优先顺序怎样确定?答:MCS-51系列单片机能提供5个中断源,2个中断优先级。各个中断源的优先级是由特殊功能寄存器IP来确定,IP中和各个中断源对应位为1时,此中断源为高优先级,否则为低优先级。在同一优先级中,各个中断源的优先顺序是由自然优先级来确定的。2.简述MCS-51系列单片机的中断响应过程。答:MCS-51系列单片机的中断响应过程是按照以下顺序执行的:开中断-----中断请求------中断判断-------中断响应-------中断返回。3.MCS-51系列单片机的外部中断有哪两种触发方式?如何设置?对外部中断源的中断请求信号有何要求?答:MCS-51系列单片机的外部中断有电平触发和边沿触发两种方式。是由特殊功能寄存器TCON中IT0,IT1的状态确定的,如:IT0为1时外部中断0为边沿触发方式,当INT0外部引脚出现下降沿时向CPU提出中断请求,否则为电平触发方式,当INT0外部引脚出现低电平时向CPU提出中断请求。4.8051单片机如果扩展6个中断源,可采用哪些方法?如何确定它们的优先级?答:一般可采取中断加查询方式,软件先查询到的为高优先级,最后查询到的为低优先级。5.6.7.无第七章1.8051定时器/计数器有哪几种工作模式?各有什么特点?答:8051定时器/计数器有0,1,2,3四种工作模式。模式0为13位1定时器/计数器,模式1为16位1定时器/计数器,模式2为自动赋初值的8位定时器/计数器,模式3可以增加一个8位定时器(T1没有模式3)。2.简述8051系列单片机定时器0、1的结构与基本原理。答:TH0和TL0构成TO,TH1和TH1构成T1。两个计数器都是加法计数器,在预置数值的基础上进行加1操作,
本文标题:单片机2-7章课后答案
链接地址:https://www.777doc.com/doc-7104120 .html