内容发布更新时间 : 2024/12/22 12:17:05星期一 下面是文章的全部内容请认真阅读。
4.编程时,一般在中断服务子程序和调用
子程序中需用保护和恢复现场,保护现场用 PUSH 指令,恢复现场用 POP 指令。
2.定时/计数器有4种操作模式,它们由
B 寄存器中的M1 M0状态决定。
A.TCON B.TMOD C. PCON D.SCON
5.堆栈指针SP始终指示堆栈的 栈顶 E.PSW
地址,当有压入或弹出堆栈操作时,SP
的内容将随之改变。程序计数器PC的
内容将始终指示 下一条将执行指令
的 地址,所以只要改变PC
的内容将改变程序的运行路径。 6.程序状态寄存器PSW的作用是用来保存
程序运行过程中的各种状态信息。其中
CY为 进位 标志,用于无符号数加(减)运算,当进行 位 操作
时作为位累加器。OV为 溢出 标志,用于有符号数的加(减)运算。
7.8031有两个16位可编程定时/计数器,T0和T1。它们的功能可由控制寄存器 TMOD 、
TCON 的内容决定,且定
时的时间或计数的次数与 TH 、 TL 两个
寄存器的初值有关。
8.MCS-51系列单片机可采用高级语言(如
BASIC语言、C语言)、可采用低级语
言进行编程;后一种语言共有 111 条指令。
二.选择填空题(每空2分,共20分) 1.在单片机中, C 是数据
存储器, A 是程序存储器。
A.ROM B.EPROM C.RAM D.EEPROM E.FLASH
3.单片机复位后,SP的内容为07H、PC、PSW、A的内容为00H,P0~P3口的内容都是为 B 。
A.0FH B.FFH C.08H D.07H E.00H
4.当执行调用指令时,首先将该指令下一
条指令的地址压入到堆栈区,
保护其下一条指令的地址,然后再将转移的地址送 B 实现转移;当再执行RET指令时自动将堆栈中的地址弹入 PC从而实现返回。
A.DPTR B.PC C.SP D.PSW E.R0 5.在进行BCD码运算时,紧跟运算指令后面的指令必须是 B 指令。 A.ADD B.DA A C.ADDC D由实际程序确定 E.随机
6.数制及编码的转换中,(10100101)二 = ( B )十六;(01010111)BCD = ( C )十
A.204D B.A5H C.57D D.01011000B
E.41H
7. 串行口中断的入口地址是
D 。
A. 0003H B.0013H C.000BH D.00023H
答:
8.单片机在与外部程序存储器进行查表操作用:保护现场及断点 作时,将使用 B 线。 一般应开辟在用户寄存器区
A.ALE INT0 B.PSEN ALE C.WR RD ALE D.ALE INT1 E.001BH
E.WR ALE 三、 简答题(每空5分 共20分)
(1) 简述P0,P2口的功能和使用注意事项
答:
(1)P0口和P2口都可以作为I/O口使用,P0口作为输出口输出高电平时要外接上拉电阻。
(2)P0口作为地址(低8位)/数据总线使用,P2口作为地址(高8位)总线使用。
(2) 简述51系列单片机的四个控制引脚的
作用
答:
RST:复位控制引脚
/EA:片外/片内ROM选择控制端 /PSEN:片外ROM读选通信号 ALE:地址锁存信号
(3) 8051内部数据存储区分为几个不同的区域?各有何作用 答:
(1)寄存器区 (2)位寻址区
(3)用户寄存器区
(4)特殊功能寄存器区
(4) 堆栈有何作用?一般应设在什么区域?
五、 阅读并分析程序(每空2分,共20分)
1.下列程序执行后,结果如何?
MOV R0, #7FH MOV 7EH,#0 MOV 7FH,#40H DEC @R0 DEC R0
DEC @R0
答: (R0)=_ 7EH _ H, (7EH)=_ OFFH __ H, (7FH)=__3FH __ H。
2.设R0=20H,R1=25H,(20H)=80H,(21H)=90H,(22H)=A0H,(25H)=A0H,(26H)=6FH,(27H)=76H,下列程序执行后,结果如何?
CLR C MOV R2,#3H
LOOP: MOV A,@R0
ADDC A,@R1
MOV @R0, A INC R0 INC R1 DJNZ R2, LOOP
JNC NEXT MOV @R0, #01H SJMP $
NEXT:DEC R0 SJMP $
答:(20)H= 20H , (21H)= 00H , (22H)= 17H ,
核心部分,已知每有一工件通过时传感器输出一负脉冲,要求所计数据能以十六进制形式显示出来。
Cy= 1 , A= 17H , R0=
23H , R1= 28H
六、编程题(每题10分,共20分)
1.
已知内部RAM从30H单元开始
连续存放一批数据,该批数据以1FH为结束符,试统计该队列中数据为0的单元的个数并把它存放在29H单元中
1. ORG
0000H MAIN: MOV R0,#30H
MOV
R7,#00
LOOP: MOV
A,@R0 CJNE A,#1FH,NEXT
SJMP
END_
NEXT: CJNE A,#00H,NEXT1
INC
R7
NEXT1: INC R0
SJMP LOOP END_: SJMP $
END
2.请用单片机设计一流水线工件计数器的
2. ORG
0000H
SJMP MAIN ORG
0003H
JMP
INT0_S MAIN: SETB IT0 SETB EX0 SETB EA CLR P1
SJMP
$ INT0_S:INC P1
RETI
参考答案 一. 填空题(每空1分,共20分) 1. 立即, 寄存器 , 位 2. MOV , MOVX , MOVC 3. 8255 , 8155 4. PUSH , POP
5. 栈顶 , 下一条将执行指令的6. 进位 , 位 , 溢出
7. TMOD , TCON, TH 、TL 8. 111
二.选择填空题(每空2分,共20分)
1.C、A 2.B 3.B 4.B
5.B 6.B、C END_: SJMP $ END 7.D 8.B
三、简答题 (每题5分 共20分)
1. (1)P0口和P2口都可以作为I/O
口使用,P0口作为输出口输出高电平时要外接上拉电阻。
(2)P0口作为地址(低8位)/数据总线使用,P2口作为地址(高8位)总线使用。
2. RST:复位控制引脚
/EA:片外/片内ROM选择控制端 /PSEN:片外ROM读选通信号 ALE:地址锁存信号 3.(1)寄存器区 (2)位寻址区
(3)用户寄存器区 (4)特殊功能寄存器区
4.作用:保护现场及断点
一般应开辟在用户寄存器区
五、 阅读并分析程序(每空2分,共20分)
1.7EH 0FFH 3FH
2.20H 00H 17H 1 17H 23H 28H
六、编程题(每题10分,共20分)
1. ORG 0000H MAIN: MOV R0,#30H MOV R7,#00 LOOP: MOV A,@R0
CJNE A,#1FH,NEXT SJMP END_
NEXT: CJNE A,#00H,NEXT1 INC R7 NEXT1: INC R0
SJMP LOOP
2. ORG SJMP ORG JMP MAIN: SETB SETB SETB CLR SJMP INT0_S:INC RETI
0000H MAIN 0003H INT0_S IT0 EX0 EA P1 $ P1