单片机第3章习题答案
- 格式:docx
- 大小:18.16 KB
- 文档页数:4
单片机第3章习题答案
第3章习题答案
一、选择题
1.在中断服务程序中,至少应该有一条( D )。
(A)传送指令(B)转移指令(C)加法指令(D)中断返回指令
2.要用传送指令访问MCS-51片外RAM,它的指令操作码助记符应是( C )。
(A)MOV (B)MOVC (C)MOVX (D)以上都行
3.JNZ rel指令的寻址方式是( C )。
(A)立即寻址(B)寄存器寻址(C)相对寻址(D)位寻址
4.执行LCALL 1020H指令时,MCS-51所完成的操作是( D )。
(A)保护PC (B)PC←1020H
(C)保护现场(D)PC+3入栈,PC←1020H
5.下面哪条指令产生WR信号( D )。
(A)MOVX A,@DPTR (B)MOVC A,@A+PC
(C)MOVC A,@A+DPTR (D)MOVX @DPTR,A
6.在执行PUSH ACC指令时,MCS-51完成的操作是( A )。
(A)(SP)←(SP)+1,((SP))←(ACC)
(B)(SP)←(ACC),((SP))←(SP)-1
(C)(SP)←(SP)-1,((SP))←(ACC)
(D)((SP))←(ACC),(SP)←(SP)+1
7.MCS-51执行完MOV A,#08H后,PSW的哪一位被置位( D )。
(A)C (B)F0 (C)OV (D)P
8.指令AJMP的跳转范围是( C )。
(A)256B (B)1KB (C)2KB (D)64KB
9.在寄存器间接寻址方式中,指定寄存器中存放的是( B )。
(A)操作数(B)操作数地址(C)转移地址(D)地址偏移量 10.执行返回指令时,返回的断点是( C )。
(A)调用指令的首地址(B)调用指令的末地址
(C)调用指令下一条指令的首地址(D)返回指令的末地址
二、填空题:
1.8051指令基本格式由标号、操作码助记符、操作数和注释组成。
2.MOV A,20H源寻址方式为直接寻址。
3.执行ANL A,#0FH指令后,累加器A的高4位=0000B 。
4.JZ rel的操作码首地址为1000H,rel=20H,它的转移目的地址为1022H 。5.若R7的初值为00H的情况下,DJNZ R7,rel指令将循环执行 256 次。
6.SJMP rel的指令操作码首地址为0050H,rel=65H,那么它的转移目的地址为00B7H 。
7.指令LCALL 37B0H,首地址在2000H,所完成的操作是2003H 入栈,37B0H→PC。8.RET是子程序指令,RETI是中断返回指令。
9.ORL A,#0F0H是将A的高4位置1,而低4位不变。
10.堆栈是在RAM中设定的存储区,栈底是固定的,栈顶是浮动的,存取数据的规则是先入后出,后入先出。
11.假定(A)=85H,(R0)=40H,(40H)=0AFH。执行指令:ADD A,@R0后,累加器A
的内容为 38H ,CY的内容为 1 ,AC的内容是 1 ,OV的内容是
1 。12.MCS-51的2条查表指令是MOVCA,@A+DPTR 和MOVC
A,@A+PC 。
13.在MCS-51中PC和DPTR都用于提供地址,但PC是为访问程序存储器提供地址,而DPTR是为访问数据存储器提供地址。
14.假定(A)=)0A5H,执行指令:SWAP A后,累加器A的内容为 5AH 。
15.执行下列指令序列后,所实现的逻辑运算式为
C=P1.0*P1.1*/P1.2 。 MOV C,P1.0
ANL C,P1.1
ANL C,/P1.2
MOV P3.0,C
三.简答题
1. 判断下列指令的正误:()
(1)MOV @R1,#80H (√)(2)MOV R7,@R1 (╳)(3)MOV 20H,@R0 (√)(4)MOV R1,#0100H (╳)(5)CLR
R4 (╳)
(6)SETB R7.0 (╳)
(7)MOV 20H,21H (√)(8)ORL A,R5 (√)(9)ANL
R1,#0FH (√)(10)XRL P1,#31H (√)(11)MOVX A,2000H (╳)(12)MOV 20H,@DPTR (╳)(13)MOV A,DPTR (╳)(14)MOV R1,R7 (╳)(15)PUSH DPTR (√)(16)POP 30H (√)
(17)MOVC A,@R1 (╳)(18)MOVC A,@DPTR (╳)(19)MOV @DPTR,#50H (╳)(20)RLC B (╳)
(21)ADDC A,C (╳)
(22)MOVC @R1,A (╳)(23)DEC DPTR (╳)
(24)SUBB B,A (╳)
(25)MUL A,B (╳)(26)INC B (√)
(27)ADDC ACC,#30H (╳)(28)RLC 30H (╳)
(29)MOV R1,C (╳)(30)CLR 25H (√)
(31)LJMP DEC (╳)
(32)LACLL ABC1 (╳)(33)JZ #30H (╳)
(34)JBC 0FFH,LL1 (╳)(35)JB P,LOOP (√)(36)DJNZ @R1,NEXT (╳)(37)DJNE R1,LAST (╳)(38)DJNZ
DPTR,LOOP (╳)
(39)CJNZ A,#30H,NEXT (√)
(40)CJNE R7,30H,ABC (╳) 2.说明下列指令中源操作数和目的操作数的寻址方式。
(1)ADD A,30H
源操作数:寄存器寻址
目的操作数:直接寻址(2)MOV 30H,20H
源操作数:直接寻址
目的操作数:直接寻址(3)MOV A,@R0
源操作数:寄存器寻址
目的操作数:寄存器间接寻址(4)MOVX @R1,A
源操作数:寄存器间接寻址
目的操作数:寄存器寻址