1、单片机程序阅读题2021年单片机程序阅读题 单片机是一种集成电路芯片,是采纳超大规模集成电路技术把具有数据处理力量的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的微型计算机系统,下面是我为你们预备的单片机程序阅读题,盼望能关心你们。 单片机程序阅读题 1. 设(A)=38H, (20H)=49H, PSW=00H, (B)=02H,填写以下结果。 SETB C ADDC A, 20H RLC A (A)= _;(CY)= _;(P)= _; MUL AB (B)= _; 2. 阅读程序并答复以下问题: X D
2、ATA 50H Y DATA 51H ORG 00H JMP START ORG 100H START: MOV SP,#60H MOV X,#10 MOV Y,#10 LCALL SUB SUB: NOP INC X DEC Y MOV A,Y JZ SUBRET LCALL SUB SUBRET: NOP RET 计算X和Y的值是多少? (X)= ; (Y)= ; 3. 执行以下程序后,R2,R3的内容是什么?请在要求说明的地方给程序加上说明 MOV R3,#45H MOV DPTR,#TABL ;说明: MOV A,R3 ANL A,#0FH ;说明: MOVC A,A+DPTR ;说明
3、: MOV R2,A MOV A,R3 ANL A,#0F0H SWAP A MOVC A,A+DPTR MOV R3,A TABL: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,98H (R2)= ; (R3)= ; 4. 51单片机振荡频率为12MHz,阅读程序后说明 ORG 0000H LJMP MAIN ORG 001BH LJMP INTT1 ORG 0040H INTT1: MOV TH1, #3CH MOV TL1, #0B0H DJNZ R7, L2 MOV R7, #20 CPL P1.2 L2: RETI ORG 0100H MO
4、V SP, #5FH MOV R7, #20 MOV TMOD, MOV TH1, #3CH MOV TL1, #0B0H SETB EA SETB SETB TR1 SJMP $ 1) 依据程序内容填空: ; ; 2) 定时器T1的定时时间是多少? 3) 存放器R7在程序中的作用是什么? 4) 该程序完成什么功能? 5. 执行下面一段程序;填写运行结果 MOV SP, #60H MOV A, #10H MOV B, #01H PUSH A PUSH B POP A POP B A , B的内容是:(A)= (B)= ; 6. 设自变量为X,存放在ARE单元,应变量Y存放在BUF单元。给程序标
5、注说明,说明该段子程序的功能并写出该程序的函数关系式。(7分) START: MOV DPTR,#ARE MO A,DPTR JZ SUL JB ACC.7,NEG ;说明: MOV A,#02H SUL: MOV DPTR,#BUF MO DPTR,A ;说明: RET NEG: MOV A,#0FEH SJMP SUL 7. 执行以下程序段后,(P1)=_。 MOV P1,#5DH CPL P1.1 CPL P1.2 CLR P1.6 SETB P1.7 8. 执行以下程序段后,(A)=_,(CY)=_。 MOV A,#C5H RL A 9.以下程序段执行后,(R0)=_,(7EH)=_,
6、(7FH)=_。 MOV R0,#7EH MOV 7EH,#0FFH MOV 7FH,#40H 1NC R0 1NC R0 1NC R0 10. 已知(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 RET 12.以下各条指令其源操作数的寻址方式是什么?各条指令单独执行后,A中的结果是什么?设(60H)=35H,(A)
7、=19H,(R0)=30H,(30H)=0FH。 (1)MOV A,#48H ;寻址方式: (A)= (2)ADD A,60H ;寻址方式: (A)= (3)ANL A,R0 ;寻址方式: (A)= 13.阅读以下程序段,写出每条指令执行后的结果,并说明此程序段完成什么功能? MOV R1,#30H ;(R1)= MOV A,#64H ;(A)= ADD A,#47H ;(A)= ,(CY)= , (AC)= DA A ;(A)= ,(CY)= , (AC)= MOV R1,A ;(R1)= ,(30H)= 此程序段完成的功能: 14. 已知(R0)=20H, (20H ) =10H, (P0
8、) =30H, (R2) =20H, 执行如下程序段后( 40H ) = MOV R0 , #11H MOV A , R2 ADD A , 20H MOV PSW , #80H SUBB A , P0 XRL A , #45H MOV 40H , A 15. 已知 ( 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. 执行下面一段程序; M
9、OV SP, #60H MOV A, #10H MOV B, #01H PUSH A PUSH B POP A POP B A , 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, #30H MOV R1,
10、#60H LOOP:MOV A,R0 MOV _,A INC R0 INC R1 DJNZ R7, _ SJMP $ END 2) 将4个单字节数放片内30H33H,它们求和结果放在片内40H,41H单元。 ORG 1000H MOV R7,#04H MOV R0,30H CLR A MOV 41H,A LOOP: ADD A,R0 JNC NEXT INC _ NEXT:INC _ DJNZ R7,LOOP MOV 40H,A SJMP $ END 3) RAM中40H单元内存有一个十六进制数,把这个数转换为BCD码的十进制数,BCD码的十位和个位放在累加器A中,百位放在R2中。 ORG 2
11、200H MOV A,_ MOV B,#64H DIV AB MOV R2,A MOV A,_ XCH A,B DIV AB SWAP _ ORL A,B SJMP $ END 4) 编程序将片内40H-46H单元内容的高4位清零,保持低4位不变。 ORG 1000H MOV R7,#07H MOV R0,_ LOOP:MOV A,R0 ANL A,_ MOV R0,A INC R0 DJNZ R7,LOOP SJMP $ END 19、程序如下 2506H M5: MOV SP,#58H; 2509HMOV 10H,0FH; 250CH MOV 11H,#0BH; 250FH ACALL XHD; 2511H MOV 20H,11H 2514H M5A: SJMP M5A XHD: PUSH 10H PUSH 11H POP 10H POP 11H RET 问:(1)执行POP 10H后堆栈内容? (2)执行M5A: SJMP M5A后,( SP )=?( 20H )=?
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1