第1页共4页第2页共4页一、简答,本题共4小题,满分20分。(1)MCS51单片机CPU复位后,使用了哪一工作寄存器区?其中R1对应的物理存储单元地址是什么?(2)说出访问下列寄存器或存储空间可以使用的寻址方式:(1)51单片机内部RAM前128字节:(2)51单片机内部RAM高128字节:(3)特殊功能寄存器:(4)外部数据存储器:(3)MCS-51单片机的外部引脚EA、ALE有什么作用?(4)简述51单片机的P0,P1,P2,P3口各有什么功能二、计算题,本题共3小题,满分20分(1)如果MCS51单片机的时钟周期的频率为24MHZ,那么ALE信号的频率为多少?(2)假设晶振频率为12MHz,所需定时时间为10ms,MCS51单片机定时器应工作在哪种方式?计算其初值M.(3)MCS51单片机串口工作在方式1(8位数据),要求使用T1工作在方式2的溢出信号作为波特率发生时钟信号,假定SMOD=0(波特率部倍增),试求T1定时器的初值。三、填空题(共16分)1、堆栈的地址由(sp)内容确定,其操作规律是“()进()出”。2、在单片机扩展时,()口和()口为地址线,()口为数据线。3)ucharpdata*dp1;/*定义了一个指向()区的指针dp1*/4)uintxdata*dp2;/*定义了一个指向()区的指针dp2*/5)uchardata*dp3;/*定义了一个指向()区的指针dp3*/6)chardatavarl;/*在()空间,定义了用直接寻址方式访问的字符型变量var1*/7)intidatavar2;/*在()空间,定义了用间接寻址方式访问的整型变量var2*/8)autounsignedlongdatavar3;/*在片内RAM()空间,定义了用直接寻址方式访问的自动无符号长整型变量var3*/9)externfloatxdatavar4;/*在()空间,定义了用间接寻址方式访问的外部实型变量var4*/10)intcodevar5;/*在()空间定义整型变量var5*/11)unsigncharbdatavar6;/*在()的()单元定义可字节处理和位处理的无符号字符型变量var6*/四、判断指令对错,正确打(√),错误打(×),若错误说明原因(12分)1.MOVA,#1000H;2.MOVXA,1000H;3.MOVCA,1000H;4.MOVX60H,A;5.将片内60H单元送片内61H单元,可用下面指令MOVR0,60H;MOV61H,@R06.XCHR1,R27.MOVXDPTR,#2000H系别_________________专业_________________班级__________本专学号_________________姓名________________密封线学生须将答案写在此线以下第3页共4页第4页共4页8.MOVX60H,@DPTR五,分析题和编程题,共32分1、用汇编语言编写一段程序,将片外RAM的2000H~2030H单元的内容,全部移到片内RAM的20H单元的开始位置,并将原位清0.(6分)2、下列程序段汇编后,从1000H单元开始的单元内容是什么?(5分)ORG1000HTAB:DB12H,34HDS3DW56H,78H,1234H3、分析程序,并在空格处填写指令以实现一定功能,(6分)ORG1000HSQU:;MOVA,20H;取X(变量:偏移量);查表求YMOV21H,A;保存Y(结果)RET;子程序结束…;其它程序段ORG3000HTAB:DB00,01,04,09,…,225;END4、片内RAM30H单元和40H单元有两个16字节数,把它们相加,结果放于30H单元开始的位置处(设结果不溢出),在大括号内补充完整程序段(6)ORG1000HMOVR0,#30HMOVR1,#40HMOVR2,#16{}END5、利用51单片机串行口和并入串出移位寄存器74LS165芯片扩展输入端口如下,试用C语言编写读端口程序。(6分)=6、.阅读下列程序,说明其功能。(3分)MOVR0,#dataMOVA,@R0RLAMOVR1,A;2xRLA;4xRLA;8xADDA,R1;10xMOV@R0,ARETRXDP3.0TXDP3.1串行数据输入MCS-51ABCLK92移位脉冲QH74LS165并行输入131211146543R2.2k+5VCDEFGH15CLKINHP1.7送数控制端1710SH/LDQHSER