SJMP $ 程序执行后:
(20H)= 20H ,(21H)= 00H,(22H)= 16H ,(23H)= 16H , Cy= 1 ,A= 15H ,R0= 23H ,R1= 28H
8.(第四章)请填写程序执行结果。已知执行前有A=02H,SP=40H,(41H)=FFH,(42H)=FFH,程序如下: POP DPH POP DPL
MOV DPTR, #3000H RL A MOV B, A
MOVC A, @A+DPTR PUSH ACC MOV A, B INC A
MOVC A, @A+DPTR PUSH ACC RET ORG 3000H
DB 10H, 80H, 30H, 80H, 50H, 80H
程序执行后:A=____H,SP=_____H,(41H)=_____H,(42H)=_____H,PC=_____H
25
9.(第三章)假定,SP=60H,A=30H,B=70H,执行下列指令:
PUSH A PUSH B
后,(SP) ,(61H)= ,(62H)= 。
11.(第三章)如果DPTR=507BH,SP=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,则执行下列指令后:
POP DPH POP DPL POP SP
则:DPH= ,DPL= ,SP== 。 12.执行下列指令后,(A)=?(R0)=?(C)=?
CLR A MOV R0,#03H LOOP:ADD A,R0 DJNZ R0,LOOP SJMP $
13.分析下列程序执行的结果和A与C的内容,如果取消DA A指令,A和C为何值?
CLR C MOV 20H,#99H MOV A,20H ADD A,#01H
26
DA A MOV 20H,A SJMP $
14.试述下列程序执行结果,并逐条加以注释 (1)MOV A,#10H
MOV P2,#30H MOV R0,#50H JB P1.0,LP1 MOVX @R0,A SJMP LP2
LP1:MOV @R0,A LP2::SJMP $
(2) MOV R0,#14H
MOV DPTR,#1000H CL: CLR A
MOVX @DPTR,A INC DPTR DJNZ R0,CL SJMP $
15.阅读下列程序并回答问题
ORG 0000H MOV R0,#32H
27
MOV R2,#00H LOOP: MOV A,@R0 CJNE A,#00H,DON INC R2 DON: INC R0 DJNZ 31H,LOOP MOV 30H,R2 SJMP $ END
(1)说明该程序的功能。
(2)31H中存放的是 ,R2是用来存放 的计数器。
(3)执行程序后31H中的值为 。 六、程序设计题(按下面要求编写相应的程序)
1. (第四章)数据块传送:试编程将片内40H~60H单元中的内容传送到以2100H为起始地址的存储区。
2. (第四章)工作单元清零:将内部50H开始的连续30个单元的内容清零。
3. (第四章)设一字符串存放在内部RAM以20H为首址的连续单元中,字符串以回车符CR(‘CR’=0DH)作为结束标志。标示统计该字符串字符B(‘B’=42H)的个数,并将其存入外部RAM的40H单元中。 4. (第四章)有一变量存放在片内RAM的20H单元,其取值范围为:
28

