单片机原理试卷题目总结_第1页
单片机原理试卷题目总结_第2页
单片机原理试卷题目总结_第3页
单片机原理试卷题目总结_第4页
单片机原理试卷题目总结_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1MCS51的中断系统有几个中断源?几个中断优先级?中断优先级是如何控制的?在出现同级中断申请时,CPU按什么顺序响应(按由高级到低级的顺序写出各个中断源)?各个中断源的入口地址是多少?答:MCS51单片机有5个中断源,2个中断优先级,中断优先级由特殊功能寄存器IP控制,在出现同级中断申请时,CPU按如下顺序响应各个中断源的请求:INT0、T0、INT1、T1、串口,各个中断源的入口地址分别是0003H、000BH、0013H、001BH、0023H。1、单片机是将微处理器、一定容量的 RAM 和ROM以及 I/O 口、定时器等电路集成在一块芯片上而构成的微型计算机。8、当CPU访问片外的存储

2、器时,其低八位地址由 P0口提供,高八位地址由 P2口提供,8位数据由 P0口提供。9、在I/O口中,P0口在接LED时,必须提供上拉电阻,P3口具有第二功能。19、是非题:工作寄存器区不允许做普通的RAM单元来使用。F20、是非题:工作寄存器组是通过置位PSW中的RS0和RS1来切换的。T21、是非题:特殊功能寄存器可以当作普通的RAM单元来使用。F22、是非题:访问128个位地址用位寻址方式,访问低128字节单元用直接或间接寻址方式。T23、是非题:堆栈指针SP的内容可指向片内00H7FH的任何RAM单元,系统复位后,SP初始化为00H。F24、数据指针DPTR是一个16位的 特殊功能寄存

3、器 寄存器。25、是非题:DPTR只能当作一个16位的特殊功能寄存器来使用。F26、是非题:程序计数器PC是一个可以寻址的特殊功能寄存器。F28、当系统处于正常工作状态且振荡稳定后,在RST引脚上加一个 高 电平并维持 2 个机器周期,可将系统复位。29、是非题:单片机89C51复位后,其PC指针初始化为0000H,使单片机从该地址单元开始执行程序。T31、是非题:单片机系统上电后,其内部RAM的值是不确定的。T36、以下哪一条指令的写法是错误的(C)。A、MOV DPTR,#3F98H   B、MOV R0,#0FEH  

4、 C、MOV 50H,#0FC3DH   D、INC R037、以下哪一条指令的写法是错误的(D)。A、INC DPTR     B、MOV R0,#0FEH     C、DEC   A     D、PUSH   A38、以下哪一条指令的写法是错误的(B)。A、MOVC A,A+DPTR    B、MOV R0,#FEH     C、CPL

5、0;  A     D、PUSH   ACC39、是非题:在51系列单片机的指令系统中,其加法、减法、乘法和除法必须有累加器A的参与才能完成。T46、单片机89C51的5个中断源分别为 INT0 、INT1 、T0 、T1以及TXD/RXD   。47、单片机89C51的中断要用到4个特殊功能寄存器,它们是TCON、SCON、 IE 以及IP。48、在89C51中,外部中断由IT0(1)位来控制其两种触发方式,分别是 电平 触发方式和  边沿 触发方式。5

6、0、是非题:在89C51中,当产生中断响应时,所有中断请求标志位都由硬件自动清零。F51、中断处理过程分为3个阶段,即中断响应、中断处理以及中断返回。52、简述51系列单片机中断响应的条件。有中断源发出中断请求;中断总允许位EA=1,即CPU开中断;申请中断的中断源的中断允许位为1,即中断没有屏蔽;无同级或更高级中断正在被服务;当前的指令周期已经结束;若现在指令为RETI或者是访问IE或IP指令,则该指令以及紧接着的另一条指令已执行完。53、是非题:在51系列单片机中,中断服务程序从矢量地址开始执行,一直到返回指令RETI为止。T56、是非题:在执行子程序调用或执行中断服务程序时都将产生压栈的

7、动作。T65、是非题:在51系列单片机的指令中,既有带借位的减法指令,又有不带借位的减法指令。F69、单片机89C51具有并行 通信和串行 通信两种通信方式。79、单片机89C51中的串行通信共有4种方式,其中方式 0 是用作同步移位寄存器来扩展I/O口的。99、MCS-51 单片机的RS1,RS0=01 时,当前寄存器R0R7 占用内部RAM(B)单元。 A、 00H07H   B、 08H0FH    C、 10H17H D、 18H1FH 101、MCS-51 单片机有片内RAM 容量(   A )。 

8、60;  A. 128B B、 4KB   C、 8KB D、 256B104、在执行下列指令后,A=_60H_,R0=_45H_,(60H)=_45H_。 MOV A,# 45H MOV R0,# 60HMOV R0,AXCH A, R0106、设RAM 中(2456H)=66H,(2457H)=34H,ROM 中(2456H)=55H,(2457H)=64H。请分析下面程序执行后各寄存器的内容。 (A)=_64H_,(DPTR)=_2356H_。 MOV A,#1 MOV DPTR,#2456H MOVC A,A+DPTR 107、MCS-51 单片机的定时器

9、/计数器工作方式0 是(    C )。 A、8 位计数器结构 B、16 位计数器结构   C、13 位计数器结构 D、2 个8 位计数器结构 108、执行下列程序后,(A)=_35H_,(B)=_16H_。 MOV A,#9FH MOV B,#36H ANL B,A SETB C ADDC A,B 109、MCS-51 单片机的外部中断0 中断入口地址为(   C   )。 A、 000BH B、 001BH C、0003H D、 0013H 寻址方式寻址空间立即数寻址程序存储器ROM直接寻址片内RAM

10、低128B、特殊功能寄存器寄存器寻址工作寄存器R0-R7、A、B、C、DPTR寄存器间接寻址片内RAM低128B、片外RAM变址寻址程序存储器(A+PC,A+DPTR)相对寻址程序存储器256B范围(PC+偏移量)位寻址片内RAM的20H-2FH字节地址、部分SFR1.MOV A,40H ;直接寻址 (40H)AMOV R0,A ;寄存器寻址 (A)R0MOV P1,#0F0H ;立即数寻址 0F0P1MOV R0,30H ;直接寻址 (30H) (R0)MOV DPTR,#3848H ;立即数寻址 3848HDPTRMOV 40H,38H ;直接寻址 (38H) 40HMOV R0,30H

11、;直接寻址 (30H) R0MOV P0,R0 ;寄存器寻址 ( R0 )P0MOV 18H,#30H ;立即数寻址 30H18HMOV A,R0 ;寄存器间接寻址 (R0) AMOV P2,P1 ;直接寻址 (P1)P2最后结果:(R0)=38H,(A)=40H,(P0)=38H,(P1)=(P2)=0F0H,(DPTR)=3848H,(18H)=30H,(30H)=38H,(38H)=40H,(40H)=40H,(48H)=38H2. MOV A,DATA;直接寻址2字节1周期MOV A,#DATA;立即数寻址2字节1周期MOV DATA1,DATA2;直接寻址3字节2周期MOV 74H,

12、#78H;立即数寻址3字节2周期2-1 MCS-51单片机内部包含哪些主要功能部件?它们的作用是什么? 答:MCS-51单片机在一块芯片中集成了CPU、RAM、ROM、定时/计数器、多功能I/O口和中断控制等基本功能部件。 单片机的核心部分是CPU,CPU是单片机的大脑和心脏。 程序存储器用于存放编好的程序或表格常数。数据存储器用于存放中间运算结果、数据暂存和缓冲、标志位等。 定时/计数器实质上是加法计数器,当它对具有固定时间间隔的内部机器周期进行计数时,它是定时器;当它对外部事件进行计数时,它是计数器。 I/O 接口的主要功能包括:缓冲与锁存数据、地址译码、信息格式转换、传递状态(外设状态)

13、和发布命令等。 中断控制可以解决 CPU 与外设之间速度匹配的问题,使单片机可以及时处理系统中许多随机的参数和信息,同时,它也提高了其处理故障与应变能力的能力。2-5 简述MCS-51单片机片内RAM区地址空间的分配特点。 答:片内数据存储器分为工作寄存器区、位寻址区和数据缓冲器区等3个区域。 工作寄存器使用内部RAM中地址为00H1FH的32个单元, 并分成4个工作寄存器组,每个组有8个工作寄存器,名称为R0R7。 对于内部 RAM 中地址为 20H2FH 的 16 个单元,CPU 不仅具有字节寻址功能,而且还具有位寻址功能。这 16 个单元共 128 位,每一位都赋予 1 个位地址,位地址

14、范围是00H7FH。 30H7FH是数据缓冲区,即用户RAM区,共80个单元。2-7 单片机复位后,各特殊功能寄存器中的初始化状态是什么? 答: 特殊功能寄存器 初始状态 特殊功能寄存器 初始状态 ACC 00H TMOD 00H PC 0000H TCON 00H PSW 00H TL0 00H SP 07H TH0 00H DPTR 0000H TL1 00H P0P3 0FFH TH1 00H IP xx000000B B 00H IE 0x000000B SCON 00H PCON 0xxx0000B SBUF 不定 2-8 MCS-51单片机的21个特殊功能寄存器中,哪些具有位寻址能

15、力? 答:MCS-51 单片机中的程序状态字寄存器(PSW),B 寄存器,累加器(ACC) ,端口 P0P3,控制寄存器中用于中断控制的中断优先级控制寄存器(IP)和中断允许控制寄存器(IE) ,用于设置定时/计数器和串行口工作方式的定时/计数器控制寄存器(TCON)、串行口控制寄存器(SCON)具有位寻址能力。2-15 什么时候需要复位操作?对复位信号有何要求? 答:复位是单片机的初始化操作。单片机系统在上电启动运行时,都需要先复位。 上电复位利用电容器的充电实现。在时钟电路工作后,在 RST 端连续给出 2 个机器周期的高电平就可完成复位操作。MCS-51 单片机的上电加按键复位电路当复位

16、按键按下3-1 什么是寻址方式?MCS-51指令系统有哪些寻址方式?相应的寻址空间在何处? 答:在指令系统中,操作数是一个重要的组成部分,它指定了参与运算的数据或数据所在的地址单元。如何找到参与运算的这个数据或数据所在的地址就称为寻址方式。 MCS-51 指令系统的寻址方式主要有立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、基址加变址寻址、相对寻址和位寻址等七种。 对程序存储器只能采用立即寻址和基址加变址寻址方式;对特殊功能寄存器只能采用直接寻址方式,不能采用寄存器间接寻址,对 8032/8052 等单片机内部 RAM 的高 128 个字节(80HFFH),只能采用寄存器间接寻址,不能使用直

17、接寻址方式;对位操作指令只能对位寻址区操作;外部扩展的数据存储器只能用MOVX指令访问, 而内部RAM的低128个字节(00H7FH)既能用直接寻址,也能用间接寻址。 3-2 访问内部RAM单元可以采用哪些寻址方式?访问外部RAM单元可以采用哪些寻址方式?访问特殊功能寄存器(SFR)可以采用哪些寻址方式? 答:对特殊功能寄存器只能采用直接寻址方式,单片机内部RAM的高128个字节 (80HFFH) ,只能采用寄存器间接寻址,外部扩展的数据存储器只能用MOVX指令访问,而内部RAM的低128个字节(00H7FH)既能用直接寻址,也能用间接寻址。 3-3 访问外部数据存储器和程序存储器可以用哪些指

18、令来实现?举例说明。 答:访问外部数据存储器可以用以下指令实现: MOVX A, Ri ;(Ri)A,寄存器Ri指向的片外RAM地址中的内容送到累加器A中 MOVX Ri, A ;A(Ri),累加器中内容送到寄存器Ri指向的片外RAM地址中 MOVX A, DPTR;(DPTR)A,数据指针指向的片外RAM地址中的内容送到累加器A中 MOVX DPTR, A ; A(DPTR),累加器中内容送到数据指针指向的片外RAM地址中 访问程序存储器可以用以下指令实现: MOVC A, A+DPTR ;(A+DPTR)A,表格地址单元中的内容送到累加器A中 MOVC A, A+PC ;PC+1PC,(A

19、+PC)A,表格地址单元中的内容送到累加器A中 3-4 试用下列3种寻址方式编程,将立即数0FH送入内部RAM的30H单元中。 (1) 立即寻址方式;(2) 寄存器寻址方式;(3) 寄存器间接寻址方式 答: (1)立即寻址方式: MOV 30H, #0FH (2)寄存器寻址方式: MOV R5, #0FH MOV 30H, R5 (3)寄存器间接寻址方式:MOV R1, #0FH MOV 30H, R13-6 加法和减法指令影响哪些标志位?怎么影响的? 答:在带进位的加法运算中,会影响进位位Cy,最终要将A中的值和其后面的值以及进位位Cy中的值相加,最终结果存在A。 在带进位减法指令中,要将累

20、加器A的内容与第二操作数及进位标志相减,结果送回到累加器A中。在执行减法过程中,如果位7(D7)有借位,则进位标志Cy置“1”,否则清“0”;如果位3(D3)有借位,则辅助进位标志AC置“1”,否则清“0”;如位6有借位而位 7 没有借位,或位 7 有借位而位 6 没有借位,则溢出标志 OV 置“1”,否则清“0”。若要进行不带借位的减法操作,则必须先将Cy清“0”。 3-8 试编写一段程序,将内部数据存储器30H、 3lH单元内容传送到外部数据存储器1000H、1001H单元中。 答: MOV A, 30H MOV DPTR, #1000H MOV DPTR, A MOV A, 31H MO

21、V DPTR, #1000H MOV DPTR, A 3-9 试编写一段程序,将外部数据存储器40H单元中的内容传送到0l00H单元中。 答: MOV DPTR, #0040H MOV A, DPTR MOV 0100H, A 6-2 MCS-51 单片机提供了几个中断源?有几级中断优先级别?各中断标志是如何产生的又如何清除这些中断标志?各中断源所对应的中断矢量地址是多少? 答:MCS-51单片机提供了5个中断源,有2级中断优先级别。中断标志由特殊功能寄存器TCON和SCON的相应位锁存。 中断标志的撤消分为: 1)定时/计数器中断请求的撤消 中断请求被响应后,硬件会自动清TF0或TF1。 2

22、)外部中断请求的撤消 (1)跳沿方式外部中断请求的撤消是自动撤消的。 (2)电平方式外部中断请求的撤消,除了标志位清“0”之外,还需在中断响应后把中断请求信号引脚从低电平强制改变为高电平。 3)串行口中断请求的撤消 响应串行口的中断后,CPU无法知道是接收中断还是发送中断,还需测试这两个中断标志位的状态,以判定是接收操作还是发送操作,然后才能清除。所以串行口中断请求的撤消只能使用软件的方法。 CLR TI ;清TI标志位 CLR RI ;清RI标志位 各中断源对应的中断矢量地址分别为: 中断源 中断矢量 外部中断0 0003H 定时器T0中断 000BH 外部中断1 0013H 定时器T1中断

23、 001BH 串行口中断 0023H 定时器中断T2(仅52系列有) 002BH 6-4 试分析以下几种中断优先级的排列顺序(级别由高到低)是否可能?若可能,则应如何设置中断源的中断级别?否则,请简述不可能的理由。 (1) 定时器T0中断,定时T1中断,外中断1NT0,外中断INT1,串行口中断; (2) 串行口中断,外中断1NT0,定时器T0中断,外中断INT1,定时器T1中断; (3) 外中断INT0、定时器T1中断,外中断INT1,定时器T0中断,串行口中断。 (1)可以,将定时器T0中断,定时T1设置为高优先级中断,将外中断1NT0,外中断INT1,串行口中断 (2)可以,将串行口中断

24、设置为高优先级中断,将外中断 1NT0,定时器 T0 中断,外中断INT1,定时器T1中断设置为低优先级中断; (3)不行,因为 MCS-51 单片机有 2 级中断优先级别,同级中断还存在按次序决定的第二优先级结构,由高到低依次为外中断 1NT0、定时器 T0 中断、外中断 INT1、定时器T1中断、串行口中断。7-2 如果采用晶振的频率为 3MHz,定时/计数器工作方式 0、1、2 下,其最大的定时时间为多少? 答:内部定时脉冲周期=机器周期=12/3Mhz=4us 工作方式0:Tmax=8192*4us=32.768ms 工作方式1:Tmax=65536*4us=262.144ms 工作方

25、式2:Tmax=256*4us=1.024ms7-10 定时/计数器测量某正单脉冲的宽度,采用何种方式可得到最大量程?若时钟频率为6MHz,求允许测量的最大脉冲宽度是多少? 答:采用定时器工作方式1可得到最大量程,最大脉冲宽度:65536*12/6M=131.072ms 【29】什么是堆栈?堆栈有哪些功能? 设计时,为什么还要对SP重新赋值?堆栈指针SP的作用是什么? 【答】堆栈是在片内数据RAM区中,数据按照“先进后出”或“后进先出”原则进行管理的区域。堆栈功能有两个:保护断点和保护数据。在子程序调用和中断操作时这两个功能特别有用。在80C51单片机中,堆栈在子程序调用和中断时会把断点地址自

26、动进栈和出栈。进栈和出栈的指令(PUSH、POP)操作可用于保护现场和恢复现场。由于子程序调用和中断都允许嵌套,并可以多级嵌套,而现场的保护也往往使用堆栈,所以一定要注意给堆栈以一定的深度,以免造成堆栈内容的破坏而引起程序执行的“跑飞”。 堆栈指针SP在80C51中存放当前的堆栈栈顶所指存储单元地址的一个8位寄存器。80C51单片机的堆栈是向上生成的,即进栈时SP的内容是增加的;出栈时SP的内容是减少的。 系统复位后。80C51的SP内容为07H。若不重新定义,则以07H为栈底,压栈的内容从08H单元开始存放。但工作寄存器R0R7有4组,占有内部RAM地址为00H1FH,位寻址区占有内部RAM

27、地址为20H2FH。若程序中使用了工作寄存器13组或位寻址区,则必须通过软件对SP的内容重新定义,使堆栈区设定在片内数据RAM区中的某一区域内(如30H),堆栈深度不能超过片内RAM空间。【2一13】程序存储器指令地址、堆栈地址和外接数据存储器地址各使用什么指针?为什么?【答】程序存储器指令地址使用程序计数器PC指针,PC中存放的是下一条将要从程序存储器中取出的指令的地址。程序计数器PC变化的轨迹决定程序的流程。PC最基本的工作方式是自动加1。在执行条件转移或无条件转移指令时,将转移的目的地址送入程序计数器,程序流向发生变化。在执行调用指令或响应中断时,将子程序的入口地址或者中断矢量地址送人P

28、C,程序流向发生变化。 堆栈地址使用堆栈指针SP。SP在80C51中存放当前的堆栈栈顶所指存储单元地址,是一个8位寄存器,对数据按照“先进后出”原则进行管理。外接数据存储器地址使用数据指针DPTR。DPTR是一个16位特殊功能寄存器,主要功能是作为片外数据存储器或I0寻址用的地址寄存器,这时会产生RD或wR控制信号,用于单片机对外扩的数据存储器或I0的控制。数据指针DPTR也可以作为访问程序存储器时的基址寄存器,此时是寻址程序存储器中的表格、常数等单元,而不是寻址指令。【2一19】80C51单片机的4个IO口在使用上有哪些分工和特点?【答】4个IO口的分工和特点如下: P0口是一个多功能的8位

29、口,可按字节访问也可按位访问。l 用作I0口。相当于一个真正的双向口:输出锁存,输入缓冲,但输入时须先将口置l;每根口线可以独立定义为输入或输出。l 用作地址数据复用总线。作数据总线使用时,输入输出8位数据D0D7;作地址总 线用时,输出低8位地址AOA7。 P1口是一个8位口,可按字节访问也可按位访问,因此,P1口不仅可以8位一组进行 输入、输出操作,还可以逐位分别定义各口线为输入线或输出线。输入时有条件,即需要先输出1,将该口设为输入状态。一般作Io口用。 P2口是一个多功能的8位口,可按字节访问也可按位访问。在单片机采用并行扩展方式时,P2口作为地址总线的高8位D8D15。 P3口是一个

30、多功能的8位口,可按字节访问,也按可位访问。可作为I0口使用,为准双向口。既可以字节操作,也可以位操作;既可以8位口操作,也可以逐位定义口线为输入线或输出线。P3可替代输入、输出功能。替代输入功能: P30一一RXD,串行输入口。 P32一一IN'I、0,外部中断O的请求。 P33一一INTl,外部中断1的请求。 P34一TO,定时器计数器O外部计数脉冲输入。 P35一一T1,定时器计数器1外部计数脉冲输入。 替代输出功能: P31一一TXD,串行输出口。 P36一一wR,外部数据存储器写选通,输出,低电平有效。 P37RD,外部数据存储器读选通,输出,低电平有效。【34】简述80C5

31、1的指令寻址方式,并举例说明。【答】执行任何一条指令都需要使用操作数,寻址方式就是在指令中给出的寻找操作数或操作数所在地址的方法。 80C5l系列单片机的指令系统中共有以下7种寻址方式。 立即寻址。在指令中直接给出操作数。出现在指令中的操作数称为“立即数”,为了与直接寻址指令中的直接地址相区别,在立即数前面必须加上前缀“#”。 例如:MOV DPTR,#1234H ;1234H为立即数,直接送DPTR 直接寻址。在指令中直接给出操作数单元的地址。 例如: MOV A,55H ;55H是操作数单元的地址,55H单元内的数据才是操作数,取出后送累加器A 寄存器寻址。在指令中将指定寄存器的内容作为操

32、作数。因此,指定了寄存器就能得到操作数。寄存器寻址方式中,用符号名称来表示寄存器。 例如: INC R7 ;R7的内容为操作数,加1后再送回R7 寄存器间接寻址。在指令中给出的寄存器内容是操作数的地址,从该地址中取出的才是操作数。可以看出,在寄存器寻址方式中,寄存器中存放的是操作数;而在寄存器间接寻址方式中,寄存器中存放的则是操作数的地址。 寄存器间接寻址须以寄存器符号名称的形式表示。为了区别寄存器寻址和寄存器间接寻址,在寄存器间接寻址中,应在寄存器的名称前面加前缀“”。 例如: ORL ARo; 当R0寄存器的内容是60H时,该指令功能是以RO寄存器的内容60H为地址,将60H地址单元的内容

33、与累加器A中的数相“或”,其结果仍存放在A中。 相对寻址。在指令中给出的操作数为程序转移的偏移量。相对寻址方式是为实现程序的相对转移而设立的,为相对转移指令所采用。 在相对转移指令中,给出地址偏移量(在80C51系列单片机的指令系统中,以“rel”表示,为8位带符号数),把PC的当前值加上偏移量就构成了程序转移的目的地址。而PC的当前值是指执行完转移指令后的PC值,即转移指令的PC值加上转移指令的字节数。转移的目的地址可用如下公式表示: 目的地址=(转移指令所在地址+转移指令字节数)+rel 例如:SJMP 80H ;80H为程序转移的偏移量,即一128。当前PC值减去128后即为转移地址 变

34、址寻址。以DPTR或PC作基址寄存器,累加器A作变址寄存器,以两者内容相加形成的16位程序存储器地址作为操作数地址。又称“基址寄存器+变址寄存器间接寻址”。变址寻址方式只能对程序存储器进行寻址。 例如: MOVC A,A+DPTR ;功能是把DPTR和A的内容相加,所得到的程序存储器地址单元的内容送A 位寻址。80C51系列单片机有位处理功能,可以对数据位进行操作,因此,就有相应的位寻址方式。位寻址的寻址范围: 片内RAM中的位寻址区。 ·可位寻址的特殊功能寄存器位。 例如:MOV c,80H ;功能是把位寻址区的80H位(即P00)状态送累加位C【314】已知(30H)=40H,(

35、40H)=10 H,(10H)=00H,(P1)=CAH,请写出执行以下程序段后有关单元的内容。 【答】有关单元的内容如下: MOV R0,#30H ;(RO)=30H MOV A,R0 ;(A)=40H MOV Rl,A ;(R1)=40H MOV B,R1 ;(B)=1OH MOV R1,P1 ;(40H)=CAH MOV A,RO ;(A)=40H MOV 10H,#20H ;(10H)=20H MOV 30H,10H ;(30H)=20H执行以上程序段后,有关单元的内容分别为:(30H)=20H,(40H)=CAH,(10H)=20H,(P1)=CAH。【3-1】已知(A)=7AH,(

36、RO)=30H,(30H)=A5 H,(PSW)=80H。请填写各条指令单独执行后的结果。【答】结果如下:(1) XCH A,R0 ;(A)=30H,(R0):7AH(2) XCH A,30H ;(A)=A5H,(30H)=7AH,(PSW)=81H(3) XCH A,R0 ;(A)=R5H,(30H)=7AH,(PSW)=81H(4) XCHD A,R0 ;(A)=75H,(30H)=AAH,(PSW)=81H(5) SWAP A ;(A)=A7H(6) ADD A,R0 ;(A)=AAH,(PSW)=04H(7) ADD A,30H ;(A)=1FH,(PSW)=81H(8) ADD A,

37、#30H ;(A)=AAH,(PSW)=04H(9) ADDC A,30H ;(A)=20H,(PSW)=01H(10) SUBB A,30H ;(A)=D4H,(PSW)=84H(11) SUBB A,#30H ;(A)=49H,(PSW)=01H【3-15】已知(R1)=20 H,(20 H)=AAH,请写出执行完下列程序段后A的内容。 【答】各指令的执行结果如下: MOV A,#55H ;(A)=55HANL A,#0FFH ;(A)=55HORL 20H,A ;(20H)=FFHXRL A,R1 ;(A)=AAHCPL A ;(A)=55H 执行完程序段后,A的内容为5 5 H。【31

38、7】已知两个十进制数分别在内部RAM中的40 H单元和50H单元开始存放(低位在前),其字节长度存放在内部RAM的30 H单元中。编程实现两个十进制数求和,求和结果存放在40 H开始的单元中。 ORG 0000H SJMP MAIN ORG 0030H MAIN: MOV R0,#40H ;被加数首址又作两个十进制数和的首址 MOV R1,#50H ;加数首址 MOV R2,30H ;字节长度 CLR C PP: MOV A,R1 ;取加数 ADDC A,R0 ;带进位加 DA A ;二一十进制数调整 MOV R0,A ;存和 INC R0 ;修正地址 INC R1 DJNZ R2,PP ;多

39、字节循环加 AJMP $ END【4-17】根据8100 H单元中的值X,决定P1口引脚输出为: 加上必要的伪指令,并对源程序加以注释。 【答】程序如下: ORG 0000H SJMP BEGIN ORG 0030H BEGIN: MOV DPTR,#8100H MOVX A,DPTR MOV R2,A JB ACC.7,SMALLER;有符号数<0 SJMP UNSIGNED ;无符号数0 SMALLER:DEC A ;X<0,输出-X(先减1,再取反) CPL A MOV P1,A SJMP OK UNSIGNED:CJNE A,#00H,BIGGER ;不等于0即大于0 MO

40、V P1,#80H ;X等于0,输出80H SJMP OK BIGGER: CLR C ;X大于0,输出A×2 RLC A ;A×2 MOV P1,A OK: SJMP $ END例如:输入55 H,P1口引脚输出AAH;输入00 H,P1口引脚输出80 H;输入F1(一1 5的补码),P1口引脚输出0FH。【5-4】什么是单片机的中断优先级?中断优先级处理的原则是什么?【答】在一个单片机系统中往往允许有多个中断源,通常给每个中断源规定了优先级别,称为“优先权"或“中断优先级。 当单片机同时接收到两个或多个不同优先级的中断请求时,先响应高优先级的中断。如果同时接收

41、到的是几个同一优先级的中断请求,则由内部的硬件查询序列确定它们的优先服务次序,当服务结束后,再响应级别较低的中断源。 在80C51单片机中有高、低两个中断优先级,通过中断优先级寄存器IP来设定。 在80C51单片机中存在同一优先级内由内部硬件查询序列确定的第二个优先级结构。其排列如下: 中断源 中断优先级 外部中断0 最高 定时器T0中断 外部中断1 定时器T1中断 串行口中断 定时器T2中断 最低【57】80C51单片机在什么情况下可响应中断?【答】中断响应是有条件的,即:·中断源申请中断;·该中断源已被允许中断,且CPU也已允许中断;·没有同级或高优先级中断在

42、执行中断服务程序。 在接受中断申请时,如遇下列情况之一,硬件生成的长调用指令LCALL将被封锁:CPU正在执行同级或高一级的中断服务程序。因为当一个中断被响应时,其对应的中断优先级触发器被置1,封锁了同级和低级中断。查询中断请求的机器周期不是执行当前指令的最后一个周期。目的在于使当前指令执行完毕后,才能进行中断响应,以确保当前指令的完整执行。当前正在执行RETI指令或执行对IE、IP的读写操作指令。80C51中断系统的特性规定,在执行完这些指令之后,必须再继续执行一条指令,然后才能响应中断。【6-1】80C51单片机内部设有几个定时器计数器?简述各种工作方式的特点。【答】80C51单片机内部设

43、有2个16位定时器计数器TO和T1。定时器计数器有4种工作方式,其特点如下: 方式O是13位定时器计数器。由THx高8位(作计数器)和TLx的低5位(32分频的定标器)构成,TLx的低5位溢出时,向THx进位;THx溢出时,硬件置位TFx(可用于软件查询),并可以申请定时器中断。 方式1是16位定时器计数器。TLx的低8位溢出时向THx进位,THx溢出时,硬件置位TFx(可用于软件查询),并可以申请定时器中断。 方式2是定时常数自动重装载的8位定时器计数器。TLx作为8位计数寄存器,THx作为8位计数常数寄存器。当TLx计数溢出时,一方面将TFx置位,并申请中断;另一方面将THx的内容自动重新

44、装入TLx中,继续计数。由于重新装入不影响THx的内容,所以可以多次连续再装入。方式2对定时控制特别有用。 方式3只适用于TO,T0被拆成两个独立的8位计数器TLO和TH0。TLO做8位计数器,它占用了T0的GATE、INTO、启动停止控制位TRO、TO引脚(P3.4)以及计数溢出标志位TF0和TO的中断矢量(地址为000BH)等TH0只能做8位定时器用,因为此时的外部引脚T0已为定时器计数器TLO所占用。这时它占用了定时器计数器T1的启动停止控制位TRl、计数溢出标志位TFl及T1中断矢量(地址为001BH)。T0设为方式3后,定时器计数器T1只可选方式O、1或2。由于此时计数溢出标志位TF

45、I及T1中断矢量(地址为001BH)已被TH0所占用,所以T1仅能作为波特率发生器或其他不用中断的地方。3访问片内RAM低128字节使用哪些寻址方式?访问片内RAM高128字节使用什么寻址方式?访问SFR使用什么寻址方式?答: 访问片内RAM低128字节使用直接寻址,寄存器间接寻址,位寻址;访问片内RAM高128字节使用寄存器间接寻址;访问SFR使用直接寻址,位寻址。4访问片外RAM使用什么寻址方式?答: 访问片外RAM使用寄存器间接寻址5访问程序存储器使用什么寻址方式?指令跳转使用什么寻址方式?答: 访问程序存储器使用指令绝对寻址,指令相对寻址。指令跳转使用指令绝对寻址,指令相对寻址。6分析下面指令是否正确,并说明理由。MOVR3,R7错,两个操作数不能同时为工作寄存器MOVB,R2对DECDPTR错,不存在MOV20H.8,F0错,位传送指令必须用CPUSHDPTRCPL36H错,不存在MOVPC,#0800H 错,PC不能访问7分析下面各组指令,区分它们的不同之处。MOVA,30H与MOVA,#30H前者表示:(30H)A 后者表示:30HAMOVA,R0与MOVA,R0前者表示:(R0)A 后者表示:(R0)AMOVA,R1与MOVXA

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论