单片机复习题 程序分析题.docx

上传人:公**** 文档编号:561814953 上传时间:2024-01-20 格式:DOCX 页数:22 大小:61.62KB
返回 下载 相关 举报
单片机复习题 程序分析题.docx_第1页
第1页 / 共22页
单片机复习题 程序分析题.docx_第2页
第2页 / 共22页
单片机复习题 程序分析题.docx_第3页
第3页 / 共22页
单片机复习题 程序分析题.docx_第4页
第4页 / 共22页
单片机复习题 程序分析题.docx_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《单片机复习题 程序分析题.docx》由会员分享,可在线阅读,更多相关《单片机复习题 程序分析题.docx(22页珍藏版)》请在金锄头文库上搜索。

1、第五部分 程序阅读题1. 设(A)=38H, (20H)=49H, PSW=00H, (B)=02H,填写以下结果。SETBCADDCA, 20HRLCA(A)= _;(CY)= _;(P)= _; MULAB(B)= _; 2. 阅读程序并回答下列问题: X DATA 50HY DATA 51HORG 00HJMP STARTORG 100HSTART:MOV SP,#60HMOV X,#10MOV Y,#10LCALL SUBSUB:NOPINC XDEC YMOV A,YJZ SUBRETLCALL SUBSUBRET: NOPRET计算X和Y的值是多少?(X) ; (Y) ;3. 执行

2、下列程序后,R2,R3的内容是什么?请在要求注释的地方给程序加上注释MOV R3,#45HMOVDPTR,#TABL;注释:MOVA,R3ANLA,#0FH;注释:MOVC A,A+DPTR;注释:MOVR2,AMOVA,R3ANLA,#0F0HSWAPAMOVC A,A+DPTRMOVR3,A.TABL: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,98H(R2) ; (R3) ;4. 51单片机振荡频率为12MHz,阅读程序后说明ORG 0000HLJMPMAINORG001BHLJMPINTT1ORG0040HINTT1:MOVTH1, #3C

3、HMOVTL1, #0B0HDJNZR7, L2MOVR7, #20CPLP1.2L2:RETIORG0100HMOVSP, #5FHMOVR7, #20MOVTMOD, MOVTH1, #3CHMOVTL1, #0B0HSETBEASETB SETBTR1SJMP$1) 根据程序内容填空: ; ;2) 定时器T1的定时时间是多少?3) 寄存器R7在程序中的作用是什么?4) 该程序完成什么功能? 5. 执行下面一段程序;填写运行结果 MOV SP, #60H MOV A, #10H MOV B, #01H PUSH A PUSH B POP A POP BA , B的内容是:(A)= (B)=

4、 ; 6. 设自变量为X,存放在ARE单元,应变量Y存放在BUF单元。给程序标注注释,说明该段子程序的功能并写出该程序的函数关系式。(7分)START:MOV DPTR,#AREMOVX A,DPTRJZ SULJB ACC.7,NEG;注释:MOV A,#02HSUL:MOV DPTR,#BUFMOVX DPTR,A;注释:RETNEG:MOV A,#0FEH SJMPSUL7. 执行下列程序段后,(P1)=_。 MOV P1,#5DH CPL P1.1 CPL P1.2 CLR P1.6 SETB P1.78. 执行下列程序段后,(A)=_,(CY)=_。 MOV A,#C5H RL A9

5、.下列程序段执行后,(R0)=_,(7EH)=_,(7FH)=_。 MOV R0,#7EH MOV 7EH,#0FFH MOV 7FH,#40H 1NC R0 1NC R0 1NC R010. 已知(SP)=60H,子程序SUBTRN的首地址为0345H,现执行位于0123H的ACALL SUBTRN双字节指令后,(PC)=_,(61H)=_,(62H)= _。11.阅读下列程序,说明其功能。 MOV R0,#data MOV A,R0 RL A MOV R1,A RL A RL A ADD A,R1 MOV R0,A RET12.下列各条指令其源操作数的寻址方式是什么?各条指令单独执行后,A

6、中的结果是什么?设(60H)=35H,(A)=19H,(R0)=30H,(30H)=0FH。(1)MOVA,#48H;寻址方式: (A)= (2)ADDA,60H;寻址方式: (A)= (3)ANLA,R0;寻址方式: (A)= 13.阅读下列程序段,写出每条指令执行后的结果,并说明此程序段完成什么功能? MOVR1,#30H;(R1)= MOVA,#64H;(A)= ADDA,#47H;(A)= ,(CY)= ,(AC)= DAA;(A)= ,(CY)= ,(AC)= MOVR1,A;(R1)= ,(30H)= 此程序段完成的功能:14. 已知(R0)=20H, (20H ) =10H, (

7、P0) =30H, (R2) =20H, 执行如下程序段后( 40H ) = MOV R0 , #11H MOV A , R2 ADD A , 20H MOV PSW , #80H SUBB A , P0 XRL A , #45H MOV 40H , A15. 已知 ( R0 )=20H, (20H )=36H, (21H) =17H, (36H) =34H, 执行过程如下: MOV A , R0 MOV R0 , A MOV A , R0 ADD A , 21H ORL A , #21H RL A MOV R2 , A RET则执行结束(R0)= (R2)= 16. 执行下面一段程序; MO

8、V SP, #60H MOV A, #10H MOV B, #01H PUSH A PUSH B POP A POP BA , B的内容是:(A)= (B)= 17. 设在31H单元存有23H,执行下面程序: MOV A, 31H ANL A, #0FH MOV 41H, A MOV A, 31H ANL A, #0F0H SWAP A MOV 42H, A 则(41H)= (42H)= 18程序填空1)数据块传送,将RAM从30H开始的连续32个单元的内容传递给片内RAM从60H开始的连续32个单元。 ORG 1000H MOV R7,_MOV R0, #30HMOV R1,#60HLOOP

9、:MOV A,R0 MOV _,A INC R0 INC R1 DJNZ R7, _ SJMP $ END2) 将4个单字节数放片内30H33H,它们求和结果放在片内40H,41H单元。ORG 1000HMOV R7,#04HMOV R0,30HCLR AMOV 41H,ALOOP: ADD A,R0 JNC NEXTINC _ NEXT:INC _DJNZ R7,LOOP MOV 40H,A SJMP $ END3) RAM中40H单元内存有一个十六进制数,把这个数转换为BCD码的十进制数,BCD码的十位和个位放在累加器A中,百位放在R2中。ORG 2200HMOV A,_MOV B,#64

10、HDIV ABMOV R2,AMOV A,_XCH A,BDIV ABSWAP _ORL A,BSJMP $ END4) 编程序将片内40H-46H单元内容的高4位清零,保持低4位不变。 ORG 1000H MOV R7,#07HMOV R0,_LOOP:MOV A,R0 ANL A,_ MOV R0,A INC R0 DJNZ R7,LOOP SJMP $END19、程序如下2506H M5: MOV SP,#58H; 2509MOV 10H,0FH; 250CH MOV 11H,#0BH; 250FH ACALL XHD; 2511H MOV 20H,11H 2514H M5A: SJMP M5A XHD: PUSH 10H PUSH 11H

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号