admin 管理员组文章数量: 887021
2024年1月26日发(作者:基于jsp的网上购物系统源码)
“微机原理与接口技术”期中复习题答案
一、
填空
1. 若外接晶振为6MHz,则8031单片机的振荡周期为 1/6us ,时钟周期为
1/3us ,机器周期为 2us ,指令周期最短为 2us ,最长为 8us 。
2. SP是 堆栈指针 ,PC是 程序计数器 ,DPTR是 数据指针 。
3. 外接程序存储器的读信号为
PSEN ,外接数据存储器的读信号为
RD 。
4. 程序中“LOOP:SJMP rel”的相对转移以转移指令所在地址为基点向前(大地址方向)最大可偏移129 个单元地址,向后(小地址方向)最大可偏移 126 个单元地址。
5. “MOVC A, @A+DPTR”指令为 变址 寻址方式。
6. 单片机寻址方式是指寻找 操作数 或 操作数地址 的方式,常用的寻址方式有 直接寻址 、 立即寻址 、 寄存寄寻址 、 寄存寄间接寻址 、 变址寻址 等。
7. 8031单片机内存20H的第7位,它的位地址为 07H。
8. 循环结构程序中循环控制的实现方法有 计数循环法 和 条件控制循环法 。
9. 循环结构程序中,当循环次数已知时,应采用 计数循环 控制法,循环次数未知时,应采用 条件控制 控制法。
10. 80C51单片机的位寻址区包括 20H~2FH 和 SFR中地址值能被8整除的特殊功能寄存器 。
11. 由8031组成的单片机系统在工作时,EA引脚应该接 低电平 。
12. LJMP的跳转范围是 64K ,AJMP的跳转范围是 2K ,SJMP的跳转范围是
-128~+127 。
13. 若A中的内容为68H,那么P标志位为 1 。
14. 单片机上电复位时PC= 0000H ,SP= 07H;而工作寄存器则缺省采用第 0 组,这组寄存器的地址范围是 00H~07H 。
15. JZ rel 的操作码地址为1000H,rel=20H,它转移的目标地址为 1022H 。
16. 8051内部有 4个 并行口,P0口直接作输出口时,必须外接 上拉电阻。并行口作输入口时,必须先 向端口写入1 ,才能读入外设的状态。
17. MCS-51的堆栈只可设置在 内部RAM区 ,其最大长度为 128Byte ,存取数据的原则是 先入后出 。堆栈寄存器SP是 8 位寄存器,用来存放 堆栈顶部的地址。
18. 假定(SP)=40H , (39H)=30H,(40H)=60H。执行下列指令:
POP DPH
POP DPL
后,DPTR的内容为 6030H ,SP的内容是 38H 。
19. CJNE <目的字节>,<源字节>,rel属于五大类指令中的_控制转移类__类指令,其操作码助记符含义是_如果目的和源中的内容不等,则跳转到偏移量为rel的指令去执行__。
20、微处理机的寻址能力(范围)由 地址线数目 决定。若某单片机有20根地址线,则它可寻址的存储器范围为 1024 K。
1
二、
选择题
1. 8031单片机的( d )口的引脚,还具有外部中断、串行通信等第二功能。
a)P0 b)P1 c)P2 d)P3
2. 下列指令中不影响标志位CY的指令有( d )。
a)ADD A,20H b)CLR C c)RRC A d)INC A
3. 当需要从MCS-51单片机程序存储器取数据时,采用的指令为( b )。
a)MOV A, @R1 b)MOVC A, @A + DPTR
c)MOVX A, @ R0 d)MOVX A, @ DPTR
4. 8031单片机中既可位寻址又可字节寻址的单元是( a )
a)20H b)30H c)00H d)70H
5. 下列哪条指令是正确的( d )
a) PUSH R2 b) ADD R0,A
c) MOV A, @DPTR d) MOV @R0,A
6. 执行中断返回指令时,从堆栈顶部弹出的内容送给( c ).
(A) A (B) CY (C)PC (D) DPTR
7. A7H和5BH两个立即数相加后,和为( c ),(CY)是( c )。
(A)1CH,0 (B) C1H,0
(C) 02H,1 (D) C1H,1
8. 若(A)=86H,(PSW)=80H,则执行RRC A指令后,A的内容是( A )。
(A)C3H (B) B3H (C) 0DH (D) 56H
9. 如果(P0)=65H ,则当
CPL P0.2
SETB C
MOV P0.4 ,C
执行后(P0)=( C )
(A)61H (B) 75H (C) 71H (D) 17H
10. 若片内(60H)=8H,(R0)=60H,A=7H,则执行指令 C 后,片内(60H)=7H.
(A)MOV R0,A; (B)MOVX R0,A;
(C)DEC @R0; (D)DEC R0;
11. MCS--51单片机在执行MOVX A,@DPTR指令时,将发出 A 信号。
(A)地址信号和RD信号;(B)数据信号和RD信号;
(C)地址信号和WR信号;(D)数据信号和WR信号;
12. 调用指令ACALL 的调用范围是 A 。
(A)2K (B)64K (C)256 (D)512
2
13. SJMP ﹩ 指令跳转的偏移量范围为: A 。
(A)-128~127; (B)0~256; (C)0~2047; (D)0~65535;
14. 执行MOV PSW,#08H指令后,被选中的当前工作寄存器R0~R7是: B 。
(A)第0组 (B)第1组 (C)第2组 (D)第3组
15. 复位后执行PUSH 00H,是把: A 。
(A)R0的内容压入08单元
(B)00H的内容压入07H单元
三、
判断题(对者打√,错者打×)
1、 MCS-51系列芯片复位后堆栈设置成从07H单元开始使用。 ×
2、 MCS-51中工作寄存器R7的实际物理地址与PSW中内容有关。√
3、 DA A指令只能用在减法指令之后起到十进制调整的作用。 ×
4、 使用8031的MCS-51系统其EA引脚必须接地。 √
5、 中断服务程序的最后一条指令是RET。 ×
6、 P2口既可以作为I/O使用,又可以作地址/数据复用口使用。 ×
7、 MOV A,30H的源操作数为立即寻址方式。 ×
8、 MOV A,@A+DPTR是一条查表指令。 ×
9、 MUL AB的执行结果是高8位在A中,低8 位在B中。 ×
10、AJMP跳转空间最大可达到64KB 。 ×
11、DPTR是由DPH和DPL两个8位特殊寄存器组成的。 √
12、汇编语言源程序中的伪指令汇编成目标程序时不产生机器码。√
13、MCS-51系列芯片特殊寄存器区按字节寻址时可以采用间接寻址。×
14、8051单片机的算术逻辑部件能完成带借位和不带借位的减法运算。 ×
15、在MCS-51中,为使准双向的I/O口工作在输入方式,必须先预置为1。 √
四、
改错
请判断下列各条指令的书写格式是否有错,如有错说明原因:
R0R1
A,@R7
A,#3000H
@A+DPTR, A
( × ) (MUL AB)
( × ) (MOV A, @Ri i=0,1)
( × ) (MOV A, #data8)
( × ) (MOVC A, @A+DPTR)
3
#1000H
6. MOVX @R0,B
7. MOV A,30H
( × ) (LJMP addr16)
( × ) MOVX @R0, A
( √ )
8. MOVX A,30H ( × ) MOVX A, @Ri 或 MOVX A, @DPTR
9. ADDC A,R7
10. SUB A,R2
11. ANL #99H ,36H
12. MOV C,ACC.0
13. ORL P1.0,P3.1
14. JBC P0,LL1
15. ACALL PROC
( √ )
( × ) SUBB A, R2
( × ) ANL A, direct 或 ANL direct, #data
( √ )
( × ) ORL C, bit
( × ) JBC bit, rel
( √ )
( √ )
( × ) ADDC A, #data8
(√ )
( × ) MOVX A, @DPTR
( √ )
(× ) MOVC A, @A+PC
16. MOV 20H , R1
17. ADDC A , 2030H
18. CLR A
19. MOVX 40H , #30H( )
20. ORG 3000H
21. MOVC @A+PC , A
22. MOVX A ,2000H ( × ) MOVX A, @DPTR
23. DJNZ #data , rel ( × ) DJNZ Rn, rel;DJNZ direct, rel;
24. INC @R5
25. DEC DPTR
26. MOV R1 ,@ R2
27. SWAP R1
28. SETB 2000H
29. JZ A , LOOP
30. DA R2
五、简答题
1、 简述8031单片机ALE引脚的功能,请举例说明其在应用系统中有哪些应用?
答:ALE被称为“地址锁存信号”。主要有两个用途:(1)在8051并行扩展时,P0口为地址/数据复用口,这时利用ALE和锁存器(74LS73、74HCT373等)来锁存地址A0~A7.(2)ALE引脚输出频率为1/6振荡器频率的脉冲信号。
2、 片外数据存储器与程序存储器地址允许重复,如何区分?
答:片外数据存储器与程序存储器地址都可以为0000H~FFFFH。尽管地址范围相同,但能够很好地加以区分,而不会发生冲突。原因为:
读取ROM中数据时使用变址寻址的MOVC指令、CPU中控制器自动读取ROM中指令时均为访问ROM,访问ROM时是选通信号PSEN有效;
4
(×)
(× ) DPTR没有自减一指令
(×) MOV A, @R2
(× ) SWAP A
(× ) SETB bit
(×) JZ LOOP
(× ) DA A
对片外RAM的读、写操作时使用间接寻址的MOVX指令,通过选通信号RD或WR有效来访问片外RAM。
3、 80C51单片机的MOV、MOVC、MOVX指令各适用哪些存储空间?请举例说明。
答:三类指令的差别是寻址空间不同。
答:MCS-51单片机指令寻址方式为间接寻址;
MOV指令的寻址空间为片内RAM和SFR寄存器,是片内数据存储器和寄存器之间的数据传送。如“MOV A, R0”
MOVC指令的寻址空间为片内外ROM的64K空间,即是访问程序存储器的指令,有MOVC A, @A+PC和MOVC A, @A+DPTR 两条查表指令。
MOVX指令的寻址空间为片外RAM的64K空间,是访问外部数据存储器的指令。如MOVX @DPTR, A。
4、 把下列数看作是无符号数,它们相应的十进制数为多少?若把下列数看成为带符号数的补码表示,它们相应的十进制数为多少?
(1)7FH;(127 127) (2)DBH (219 -37) (3)FEH (254 -2)
5、 80C51单片机在片内集成了哪些主要逻辑功能部件?各个逻辑部件的最主要功能是什么?
答:80C51单片机内部主要包含微处理器CPU(算术逻辑单元ALU及控制器等)、只读存储器ROM、读/写存储器RAM、定时器/计数器、并行I/O口P0-P3、串行口、中断系统及定时控制逻辑电路等,各部分通过内部总线相连。
(1) CPU:主要完成运算和控制功能,
(2) 内部ROM:用于存放程序和表格数据等。
(3) 内部RAM:存储程序在运行期间的工作变量、数据以及堆栈区。
(4) I/O口:用于检测与控制。有些I/O引脚还具有多种功能,比如可以作为数据总线、地址总线或某些控制总线。
(5) 串行I/O口:用以实现与某些终端设备进行串行通信,有些可用多个单片机相连构成多机系统。
(6) 定时/计数器:80C51单片机内部有两个16位定时器/计数器,可以编程实现定时和计数功能。
(7) 中断系统:80C51单片机具有内、外共5个中断源
(8) 定时电路及元件:单片机整个工作是在时钟信号的驱动下,按照严格的时序有规律地一个节拍一个节拍地执行各种操作。
五、
按题意编写程序并加以注释,加上必要的伪指令。
1、 将40H中ASCII码转换为一位BCD码,存入42H的高4位中。
MOV A, 40H
5
CLR C
SUBB A, #30H ;ASCII码变为BCD数字
SWAP A
ANL 42H, #0FH
ORL 42H, A
2、 将片内RAM的20H-24H单元中5个压缩BCD码拆开,并转换为10个ASCII码,依次存入外部RAM2100H-2109H单元中。
ORG 0000H
AJMP 0100H
ORG 0100H
LOOP0: MOV R0, #20H
MOV R7, #05
MOV DPTR, #2100H
LOOP: MOV A, @R0
ANL A, #0FH
ADD A, #30H
MOVX @DPTR, A
INC DPTR
MOV A, @R0
ANL A, #0F0H
SWAP A
ADD A, #30H
MOVX @DPTR, A
INC DPTR
INC R0
DJNZ R7, LOOP
SJMP $
END
3、 请编写多字节加法子程序。入口条件有3个,即字节长度、加数首地址和被加数首地址,累加和存放地址与加数存放单元相同。对源程序加注释和伪指令。
注:加数首地址放在R0中,被加数首地址放在R1中,字节长度放在R7中。
ORG 0000H
AJMP 0100H
ORG 0100H
ADDSUB: CLR C
6
LOOP: MOV A, @R0
ADDC A, @R1
MOV @R0, A
INC R0
INC R1
DJNZ R7, LOOP
RET
END
4、 在片外数据存储器8000H和8001H单元内各有一个小于0CH的数,请编写源程序求出这两个数的平方之和,要求采用调用查表子程序的方法实现。平方和存放在片内RAM中。对源程序加注释和伪指令。
注:平方和放在内部RAM20H中, 用DPTR作为外部RAM地址指针。
ORG 0000H
AJMP MAIN
ORG 0100H
MAIN: MOV DPTR, #8000H
MOVX A, @DPTR
LCALL GETSQUARE
MOV 20H, A
INC DPTR
MOVX A, @DPTR
LCALL GETSQUARE
ADD A, 20H
XCH A, 20H
SJMP $
GETSQUARE: ADD A, #01H
MOVC A, @A+PC
RET
TAB: DB 0H, 1H, 4H, 9H, 10H, 19H, 24H,31H, 40H, 51H, 64H, 79H
END
5、 编写一程序将片外数据存储器中7000H~70FFH单元全部清零。
ORG 0100H
MOV DPTR, #7000H
MOV R0, #00H
CLR A
LOOP: MOVX @DPTR, A
7
INC DPTR
DJNZ R0, LOOP
RET
END
六、
读程序题
1.执行下列程序段后,(P1)=_9BH___。
MOV P1,#5DH
CPL P1.1
CPL P1.2
CLR P1.6
SETB P1.7
2.执行下列程序段后,(A)=__8BH_____,(C)=_保持不变 ___。
MOV A,#C5H
RL A
3.下列程序段执行后,(R0)=__7FH__,(7EH)=_00H___,(7FH)=_41H___。
MOV R0,#7EH
MOV 7EH,#0FFH
MOV 7FH,#40H
INC @R0
INC R0
INC @R0
4.已知(SP)=60H,子程序SUBTRN的首地址为0345H,现执行位于0123H的ACALL SUBTRN双字节指令后,(PC)=_0345H__,(61H)=__25H_____,(62H)= _01H___。
5.阅读下列程序,说明其功能。
MOV R0,#data
MOV A,@R0
RL A
MOV R1,A
RL A
RL A
ADD A,R1
MOV @R0,A
RET
把内存中地址为data单元中的值放大十倍
8
6.阅读程序并填空,形成完整的程序以实现如下功能。
有一长度为10字节的字符串存放在8031单片机内部RAM中,其首地址为40H,每个字符串的内容为7位,要求在每个字符串的D7位加上偶校验位。(以调用子程序的方法来实现。)
源程序如下:
ORG 1000H
MOV R0,#40H
MOV R7,#10
NEXT: MOV A, ① @R0
ACALL SEPA
MOV @R0,A
INC R0
DJNZ ② R7 ,NEXT
SJMP $
SEPA: ③ JNC PSW.0,SRET
ORL A, ④ #80H
SRET: ⑤ RET
9
版权声明:本文标题:“微机原理与接口技术”期中复习题答案 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/free/1706222474h504479.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论