《单片机原理及应用》习题库 联系客服

发布时间 : 星期三 文章《单片机原理及应用》习题库更新完毕开始阅读7367f57827284b73f2425056

(2)一台计算机所有指令的集合称为该机器的指令系统。 (3)寻址方式就是寻找指令中操作数或操作数所在地址。 8.

MCS-51系列单片机有哪7种寻址方式?各有什么特点?

答:(1)MCS-51的7种寻址方式分别是:直接寻址、寄存器寻址、寄存器间接寻址、

立即寻址、变址寻址、相对寻址和位寻址。

(2)直接寻址方式中,指令的操作数部分是操作数所在的地址,其寻址空间是内部RAM的低128B及特殊功能寄存器;寄存器寻址方式中,被寻址的寄存器的内容即是操作数,其寻址空间为R0~R7、A、B、Cy、DPTR;寄存器间接寻址方式是把指定寄存器的内容作为地址,由该地址所指定的存储单元内容作为操作数,其前用“@”标示,其寻址空间为内容RAM的低128B和外部RAM;立即寻址是在该指令操作码后紧跟一字节或两字节操作数,操作数前用“#”标示,其寻址空间是ROM;变址寻址的操作数所在地址由基地址加上地址偏移量形成,其寻址空间是ROM;相对寻址级出现在相对转移指令中,其寻址空间是ROM的256B范围;位寻址是将8位二进制的某一位作为操作数,指令中给出的是位地址,寻址空间是内部RAM的20H~2FH单元位地址及可以进行位寻址的SFR。 9.

MCS-51系列中断系统包括几个中断源和几个中断优先级,写出所有的中断源的

符号、名称及其入口地址。

答:MCS-51系列中断系统包括5个中断源2个中断优先级: 中断源符号 中断源名称 入口地址

INT0

外部中断0 0003H

T0 T0溢出中断 000BH

INT1

外部中断1 0013H

17

T1 T1溢出中断 001BH TX/RX 串行口(接收/发送) 0023H

10. MCS-51系列单片机中用于中断允许和中断优先级控制的寄存器分别是什么?写出中断允许控制寄存器的各控制位的符号及含义。

答:MCS-51系列单片机用于中断允许和中断优先级控制的寄存器分别是IE和IP; AFH AEH ADH ACH ABH AAH A9H A8H

EA ES ET1 EX1 ET0 EX0 IE(A8H)

EA——中断允许控制位;ES——串行口中断允许控制位;ET1定时器/计数器T1的溢出中断允许位;EX1——外部中断1中断允许位;ET0——定时器/计数器T0溢出中断允许位;

EX0——外部中断0中断允许位;当相应的位为“1”时允许中断,为“0”时禁示中断。 11. 简述并行通信和串行通信的特点。

答:并行通信的特点是:控制简单、传输速度快;由于传输线较多,长距离传送时成

本高且接收方的各位同时接收存在困难。串行通信的特点是:传输线少,长距离传送时成本低,且可以利用电话网等现成的设备,但数据的传送控制比并行通信复杂。

12. I/O寻址方式有哪几种,各有什么优缺点?MCS-51系列单片机采用哪种寻址方式?Intel 8086/8088采用哪种寻址方式?

答:(1)I/O寻址方式有两种,分别是标准的I/O寻址方式(独立编址)、存储器映射

I/O寻址方式(统一编址);

(2)前者的优点是:处理速度较快,I/O端口地址不占用存储空间,各自都有完整的

18

地址空间,而且访问存储器与访问I/O设备指令有别,程序清晰,其缺点是制造CPU时必须单独集成专门I/O指令所需要的那部分逻辑电路;

后者的优点是:程序设计灵活性好,I/O端口地址安排灵活,并且I/O端口数目不受限制,CPU无需专用的I/O指令和接口信号,处理能力强,其缺点是减少了存储空间,执行指令时间较长,在程序中较难区分是存储器操作还是I/O操作,硬件设计中所用的译码电路复杂。

(3)MCS-51系列单片机采用存储器映射I/O寻址方式;Intel8086/8088采用标准的I/O寻址方式。

五、程序分析题(请根据各题具体要求填写答案)。

1.设A=83H,R0=17H,(17H)=34H;写出下列程序中每条指令执行后的结果: ANL A,#17H;(A)=03H ORL 17H,A ;(17H)=37H XRL A,@R0;(A)=34H CPL A ; (A)=0CBH 2.以下程序执行后,(40H)= 5EH ,(41H)= 69H 。 CLR C MOV A,#56H SUBB A,#0F8H MOV 40H,A MOV A,#78H SUBB A,#0EH MOV 41H,A

19

3.设内部RAM中59H单元的内容为50H,写出当执行下列程序段后寄存器A= 25H ,R0= 50H ,

50H= 00H ,51H= 25H 。 MOV A,59H;(A)=50H MOV R0,A ;(R0)=50H MOV A,#00H;(A)=00H MOV @R0,A;(50H)=00H MOV A,#25H;(A)=25H MOV 51H,A;(51H)=25H MOV 52H,#70H;(52H)=70H

4.设堆栈指针SP中的内容为60H,内部RAM中30H和31H单元的内容分别为24H和10H,执行下列程序段后,61H= 24H ,62H= 10H ,30H= 00H,31H= 0FFH,DPTR= 2410H 及SP= 60H 。

PUSH 30H;(SP)=61H,(61H)=24H PUSH 31H;(SP)=62H,(62H)=10H POP DPL;(DPL)=10H,(SP)=61H POP DPH;(DPH)=24H,(SP)=60H MOV 30H,#00H;(30H)=00H MOV 31H,#0FFH;(31H)=FFH

5.设A=40H,R1=23H,(40)=05H。执行下列两条指令后,累加器A和R1以及内部RAM中40H单元的内容各为何值? XCH A,R1;(A)=23H,(R1)=40H

20