1、89C51单片机中断响应的条件是什么?
解:●有中断源发出中断请求;●中断总允许位EA=1,即CPU开中断;●申请中断的中断源的中断允许位为1,即中断没有屏蔽;●无同级或更高级中断正在被服务;●当前的指令周期已经结束;●若现在指令为RETI或访问IE或IP指令,则该指令以及紧接着的另一条已执行完。
2、8051的定时器/计数器有几个?是多少位的?有几种工作方式?其工作原理如何?有几种工作模式?分别是多少位的?
解:8051有2个16位的定时器/计数器。有4中工作方式。定时器与计数器是根据输入的脉冲进行加1计数,当计数器溢出时,将溢出标志位置1,表示计数到预定值。有4中工作模式(0,1,2,3)。模式0为13位1定时器/计数器,模式1为16位1定位器/计数器,模式2为自动赋初值的8位定时器/计数器,模式3为可以增加一个8位定时器。
3、89C51单片机有五个中断源,分别是什么?并列出各中断源的中断矢量地址。
解:①外部中断0,0003H;②定时器/计数器0 000BH;③外部中断1 0013H;④定时器/计数器1 001BH;⑤串行口 0023H。
4、LED的静态显示方式与动态显示方式有何区别?各有什么优缺点?
解:静态显示是指几块 LED 同时显示,动态显示是指几块 LED 分时显示(即扫描)。静态显示方式编程较简单,但占用 I/O 口线多,硬件成本高,适用于显示位数比较少的场合;动态显示可以节省硬件资源即 I/O 口,但要占用较多的 CPU 时间。
5、MCS-51指令系统主要有哪几种寻址方式?每种寻址方式举个例子。
解:主要有7种寻址方式:①立即寻址(MOV A,#16);②直接寻址(MOV 20H,P1);③寄存器寻址(MOV A,R0);④寄存器间接寻址(MOVX A,@DPTR);⑤变址寻址(MOVC A,@A+DPRT);⑥相对寻址(SJMP LOOP);⑦位寻址(ANL C,70H)。
█6、为什么要按键去抖?简述软件去抖动的思想,如果有按键接在P1.0脚上,请写出完整的带去抖动功能的键盘程序,要求该键按下去再松开时,才执行该键功能。
解:由于通常的按键所用的开关是机械开关,当开关闭合、断开时并不是马上稳定地接通和断开,而是在闭合与断开瞬间均伴随有一连串的抖动,因此要按键去抖。
思想:检测键闭合后延时5-10ms,让前沿抖动消失后再一次检测键的状态,如果仍保持闭合状态电平,则确认真正按键。
KEY_00:JB P1.0 KEY_01
LCALL DELAY
JNB P1.0 $
LCALL DELAY
JB P1.0 KEY_00
KEY_01:JB P1.0 KEY_01
LCALL DELAY
JNB P1.0 $
LCALL DELAY
JB P1.0 KEY_00
RET
7、MCS-51单片机内部包括哪些主要逻辑功能部件?
①一个8位微处理器CPU;②数据存储器RAM和特殊功能寄存器SFR;③内部程序存储器ROM;④两个定时/计数器,用以对外部事件进行计数,也可用作定时器;⑤4个8位可编程的I/O并行端口,每个端口既可作输入,也可作输出;⑥一个串行端口,用于数据的串行通信。
8、AJMP跳转空间最大可达到64KB。(×)
9、MOV A,@R7,将R7单元中的数据作为地址,从该地址中取数,送入A中。(×)
10、必须进行十进制调整的十进制运算只有加法和减法。(×)
11、在单片机89C51中,读和写的SBUF在物理上是独立的,但地址是相同的。(√)
█12、执行返回指令是,返回的断电是调用指令的首地址。(×)
13,、MCS-51单片机中的PC是不可寻址的。(√)
14、指令字节数越多,执行时间越长。(×)
█15、求十进制数***的反码和补码(二进制或十六进制表示),该反码为 ,补码为 。
16、当89C51的RST引脚上保持 2 个机器周期以上的高电平时,89C51即发生复位。
17、单片机89C51的始终频率为6MHz,若要求定时1ms,定时/计数器工作于模式1,其定时/计数器的初值为 FE0CH 。
█18、若A中的内容为***H(63H),那么P标志位为 (0) 。
19、80C51单片机基本型内部RAM有 128 个字节单元,这些但愿可以分为三个用途不同的区域: 工作寄存器 区, 位寻址 区, 数据缓冲 区。
20、指令格式是由 操作码 和 操作数 所组成,也可能仅由 操作码 组成。
21、访问MCS-51访问片外存储器时,利用 ALE 信号锁存来自 P0 发出的低8位地址新号。
22、访问MCS-51单片机程序存储器地址空间、片内数据存储器地址、片外数据存储器地址的指令分别为 MOVC ,MOV和 MOVX 。
█23、MCS-51单片机指令ANL,A,****(20)H中源操作数的寻址方式是 直接寻址 。
24、在变址寻址方式中,以 累加器 作为变址寄存器,以PC或 DPTR 作基址寄存器。
25、中断源的允许是由 IE 寄存器决定的,中断源的优先级别是由 IP 寄存器决定的。
26、在共阳极LED数码管上显示字符“***”,其相应的段选码值应该是 。
27、按键值的识别方式不同,键盘可分为编码式和 非编码 式两类。
28、在R7初值为00H的情况下,DJNZ R1,rel指令将循环执行 256 次。
29、加入数据传送的速率是***个字符/秒,每一个字符规定包含***个位,则传送的波特率为 。
30、I²C总线只有两根信号线 数据线(SDA) 和 时钟线(SCL) 。
31、单片机与普通计算机的不同之处在于其将 CPU 、 存储器 和 I/O口 三部分集成于一块芯片上。
32、MCS-8051系列单片机字长是 8 位,有 40 根引脚。
33,、假定累加器A的内容30H,执行指令:
1000H:MOVC A,@A+PC后,把程序存储器( C )单元的内容送累加器A中。
A、1000H B、1030H C、1031H D、1032H
34、MCS-51单片机访问外部存储器时,利用( C )新号锁存来自( )口的低8位地址信号。
A、EA P2 B、EA P0 C、ALE P0 D、ALE P2
35、单片机能直接运行的程序叫( C )。
A、源程序 B、汇编程序 C、目标程序 D、编译程序
36、单片机的堆栈指针SP始终是指示( B )。
A、堆栈底 B、堆栈顶 C、堆栈地址 D、堆栈中位置
37、3D.0AH转换成二进制数是( A )。
A、111101.0000101B B、111100.0000101B C、111101.101B D、111100.101B
38、在CPU内部,反应程序运行状态或反映运行结果的特制寄存器是( A )。
A、PSW B、PC C、ACC D、SP
39、关于MCS-51的堆栈操作,正确的说法是( C )。
A、先入栈,在修改栈指针 B、先修改栈指针,再出栈 C、先修改栈指针,再入栈 D、以上都不对
40、若(A)=86H,(PSW)=80H,则执行RRC A指令后( A )。
A、C3H B、B3H C、0DH D、56H
41、下列指令写法正确的是( D )。
A、MOV #20H,A B、ADD R2,#30H C、PUSH R0 D、RRC A
42、LCALL指令操作码地址是20000H,执行完相应子程序返回指令后,PC=( D )。
A、2000H B、2001H C、2002H D、2003H
43、下列标号中,正确的的标号是( D )。
A、1BT: B、BEGIN: C、ADD: D、STAB31:
44、单片机的P0、P1口作输入用途之前必须( A )。
A、在相应端口先置1 B、在相应端口先置0 C、外接高电平 D、外上拉电阻
45、PSW=18H时,则当前工作寄存器是( D )。
A、0组 B、1组 C、2组 D、3组
46、MCS-51汇编语言指令格式中,唯一不可缺少的部分是( B )。
A、标号 B、操作码 C、操作数 D、注释
47、MCS-51指令系统中,求反指令的是( A )。
A、CPL A B、RLC A C、CLR A D、RRC A
48、设在内RAM 40H开始的存储区有若干个字符和数字,已知最后一个为字符“$”(并且只有一个,统计包括“$”在内的这些字符数字的个数,结果存入片内RAM30H单元中,“$”字符的ASC11码值为24H)。
解: CONT:MOV R1,#40H
MOV 30H,#0
LOOP:CJNE @R1,#24H,NEXT
INC 30H
RET
NEXT:INC 30H
INC R1
SJMP LOOP
49、试编一延时20ms的子程序,设系统振荡频率为12MHz,要求写出延时时间的计算过程。
解: DELAY20MS:MOV R7,#04H
NOP
LOOP:MOV R6,#0F8H
DJNZ R6,$
DJNZ R7,LOOP
RET
50、编写子程序,从片内RAM的BLOCK单元开始有一个无符号数据块,其长度存于片内RAM的LENGTH单元中,是求出其中的最大值,保存到片内RAM的MAX_VAL单元。
解: START:LEN DATA 20H
MAX DATA 21H
BLOCK DATA 22H
CLR A
MOV R2,LEN
MOV R1,#BLOCK
LOOP:CLR C
SUBB A,@R1
JNC NEXT
MOV A,@R1
SJMP NEXT1
NEXT:ADD A,@R1
NEXT1:INC R1
DJNZ R2,LOOP
MOV MAX,A
51、请编一能求20H和21H单元内两数差的绝对值,并把它保留在内部RAM的30H单元的子程序。
解: ORG 1200H
CLR C
MOV A,20H
SUBB A,21H
JNB ACC.7,NEXT
CPL A
INC A
NEXT:MOV 30H,A
SJMP $
END
1、给出下列程序执行结果及对PWS的影响。
MOV A,#0FH
CLR C
CPL A
MOV 30H,#12H
ORL 30H,#0ABH
ADD A,30H
RL A
上述指令执行后:A= 57H ,PSW中(C)= 1 ,(P)= 1 。
2、如果(DPTR)=5678H,(SP)=42H,(3FH)=12H,(40H)=34H,(41H)=50H,(42H)=80H,则执行下列指令后:
POP DPH
POP DPL
RHT
则:(PCH)= 34H ;(PCL)= 12H ;(DPH)= 80H ;(DPL)= 50H 。
3、执行如下程序,填出A寄存器的内容。
MOV A,#88H
MOV R7,# 0AAH
ORL A,R7 ;A的内容为 AAH
MOV A,#37H
MOV R7,#89H
ANL A,R7 ;A的内容为 01H
XRL A,R7 ;A的内容为 88H
RET
4、在执行下列指令后,A= 60H ,R0= 45H ,(60H)= 45H 。
MOV A,#45H
MOV R0,#60H
MOV @R0,A
XCH A,R0
本文来源:https://www.2haoxitong.net/k/doc/d2ca5b44e518964bcf847c34.html
文档为doc格式