程序分析1.指出下列每条指令的寻址方式,并指出每条指令的功能。
(1)MOV A,#40H(2)MOVC A,@A+PC(3)ADD A,R0(4)MOVX A,@DPTR(5)ANL A,#0FH(6)MOV C,30H2.已知:(30H )=10010110B,(31H )=11110000B,请给出下列每条指令连续执行后注释中的结果。
MOV 32H,30H ;(32H )=XRL 32H,#0FH ;(32H )=MOV A,31H ;(A )=SWAP A ;(A )=ANL A ,#0F0H ;(A )=DEC A ;(A )=3.下列各条指令其源操作数的寻址方式是什么?各条指令单独执行后,A中的结果是什么?设(60H)=35H,(A)=19H,(R0)=30H,(30H)=0FH。
(1)MOV A,#48H ;寻址方式:;(A)=(2)ADD A,60H ;寻址方式:;(A)=(3)ANL A,@R0 ;寻址方式:;(A)=4.已知:(R0)=4BH,(A)=84H,片内RAM(4BH)=7FH,(40)=20H MOV A,@R0MOV @R0,40HMOV 40,AMOV R0,#35H问执行程序后,(R0)= (A)=(4BH)= (40H)=5.设(A)=38H,(20H)=49H,PSW=00H,(B)=02H,填写以下中间结果。
SETB CADDC A, 20H (A)= (CY)= (AC)= RLC A (A)= (CY)=6.若PSW=00,执行下列程序后,PSW的各位状态如何?MOV A,#0FBHMOV PSW,#10HADD A,#7FH7.阅读下列程序段,写出每条指令执行后的结果。
MOV R1,#30H ;(R1)=MOV A,#64H ;(A)=ADD A,#47H ;(A)=DA A ;(A)=MOV @R1,A ;(R1)= ,(30H)= 8.设在31H单元存有#23H,分析下面程序并填空。
MOV A,31HANL A,#0FHMOV 41H,AMOV A,31HANL A,#0F0HSWAP AMOV 42H,A(A)= ;(41H)= ;(42H)= 。
9.执行下列程序MOV R0,#7EHMOV 7EH,#0FFHMOV 7FH,#40H1NC @R0INC R0INC @R0(R0)=______________;(7EH)=___________ ;(7FH)=_____________。
10.执行下面一段程序;MOV SP,#60HMOV A,#10HMOV B,#01HPUSH APUSH BPOP APOP BA , B的内容是:(A)= (B)=11.已知(R0)=20H,(20H ) =10H,(P0) =30H,(R2) =20H,执行如下程序段,分析程序结果。
MOV @R0 ,#11HMOV A,R2ADD A,20HMOV PSW,#80HSUBB A,P0XRL A,#45HMOV 40H,A12.已知( R0 )=20H,(20H )=36H,(21H) =17H,(36H) =34H,执行过程如下:MOV A,@R0MOV R0,AMOV A,@R0ADD A,21HORL A,#21HRL AMOV R2,ARET则执行结束(R0)= (R2)=13.设(A)=38H,R0=28H,(28H)=18H,执行下列程序后,写出每条指令执行后的结果:ORL A,#27HANL A,28HXCHD A,@R0CPL A14.阅读下列程序段,并说明此程序段完成什么功能?MOV R2,#0AHMOV R0,#20HCLR ALOOP:ADD A,@R0INC R0DJNZ R2,LOOPEND此程序段完成的功能:15.阅读下列程序,说明其功能。
MOV R0,#dataMOV A,@R0RL AMOV R1,ARL ARL AADD A,R1MOV @R0,ARET16.分析下面程序并填空。
MOV 30H,#45HMOV R0,#60HMOV A,30HMOV B,AMOV @R0,B(A)= ;(R0)= ;(60H)= 。
17.阅读下列程序段,写出每条指令执行后的结果:MOV A,#88HMOV R0,#20HCLR CADDC A,R028.阅读下列程序段,写出每条指令执行后的结果:MOV R1,#30HMOV A,#64HCLR CADDC A,#47HMOV R4,#0BHMOV A,#89HCLR CADDC A,R419.阅读下列程序段,写出每条指令执行后的结果:MOV R2,#10HMOV A,#44HCLR CSUBB A,R220.阅读下列程序段,写出每条指令执行后的结果:MOV R3,#0AHMOV A,#67HCLR CSUBB A,R321.阅读下列程序段,写出每条指令执行后的结果:MOV R5,#0CHMOV A,#44HCLR CSUBB A,R522.阅读下列程序段,写出每条指令执行后的结果:MOV R6,#0FHMOV A,#18HCLR CSUBB A,R6MOV R7,#0DHMOV A,#65HCLR CADDC A,R724.已知A=7AH,R0=30H,(30H)=A5H,分别执行下列各条指令后的结果如何?(1)X RL A,R0(2)X RL A,@R0(3)X RL A, #77H(4)X RL A, 30H25.已知A=7AH,R0=30H,(30H)=A5H,PSW=80H,分别执行下列各条指令后的结果如何?(1)ADDC A,R0(2)ADDC A,@R0(3)CLR A(4)CPL A26.已知A=7AH,R0=30H,(30H)=A5H,PSW=80H,分别执行下列各条指令后的结果如何?(1)MOV A,R0(2)MOV A,@R0(3)SUBB A, R0(4)INC A27.已知A=7AH,R0=30H,(30H)=A5H,PSW=80H,分别执行下列各条指令后的结果如何?(1)R L A(2)R LC A(3)A NL A,R0(4)A NL A,@R028.已知A=7AH,R0=30H,(30H)=A5H,PSW=80H,分别执行下列各条指令后的结果如何?(1)XCH A,R0(2)SWAP A(3)ADD A,R0(4)ADDC A, @R029.已知A=7AH,R0=30H,(30H)=A5H,PSW=80H,分别执行下列各条指令后的结果如何?(1)XCH A,@R0(2)XCH A, R0(3)XCHD A, @R0(4)ADDC A, R030.已知A=7AH,R0=30H,(30H)=A5H,PSW=80H,分别执行下列各条指令后的结果如何?(1)RR A(2)RRC A(3)ORL A,R0(4) ORL A,@R031.已知A=7AH,R0=30H,(30H)=A5H,分别执行下列各条指令后的结果如何?(1)D EC A(2)D EC @R0(3)D EC R0(4)A NL A, #65HMOV R7,#07HMOV R0,#30HMOV A,@R0LW:INC R0XCH A,@R0DJNZ R7,LWEND此程序段完成的功能:33.阅读下列程序段,说明此程序段完成什么功能?MOV A,20HANL A,#0FHMOV R0,AMOV A,20HSWAP AANL A,#0FHMOV R1,ACLR ALOOP:ADD A,R1DA ADJNZ R0,LOOPMOV 21H,AEND此程序段完成的功能:ASCTAB:DB ‘0123456789ABCDEF’MOV DPTR,#ASCTABMOV A,30HSWAP AANL A,#0FHMOVC A,@A+DPTRMOV 40H,AMOV A,30HANL A,#0FHMOVC A,@A+DPTRMOV 41H,AEND此程序段完成的功能:35.阅读下列程序段,并说明此程序段完成什么功能?MOV R0,#22HMOV @R0,#00MOV A,20HXCHD A,@R0ORL 22H,#30HSWAP AORL A,#30HMOV 21H,A此程序段完成的功能:36.阅读下列程序段,并说明此程序段完成什么功能?SUB:MOV A,R0ANL A,#0FHADD A, #02HMOVC A, @A+PCMOV R0,ARETTAB:DB 30H,31H,32H,33H,34H,35H,36H,37H DB 38H,39H,41H,42H,43H,44H,45H,46H 此程序段完成的功能:37.阅读下列程序段,并说明此程序段完成什么功能?MOV R0,#30HMOV R1,#00HLOOP:CJNE @R0,#0FFH,NEXTINC R1NEXT:INC R0CJNE R0,#51H,LOOPMOV 51H,R1END此程序段完成的功能:38.阅读下列程序段,并说明此程序段完成什么功能?MAX EQU 30HMOV R0,#20HMOV R7,#08HMOV MAX,@R0DEC R7LOOP: INC R0MOV A,@R0CJNE A,MAX,CHKCHK:JC LOOPMOV MAX,ALOOP1:D JNZ R7,LOOPEND此程序段完成的功能:39.阅读下列程序段,说明此程序段完成什么功能?MOV R0,#30HMOV R1,#40HMOV A,#50HMOV R7,#10LOOP:MOV 20H,@R0JB 20H.7,FSHUZSHU:MOV @ R1,20HINC R1SJMP NEXTFSHU:XCH A,R1MOV @R1,AXCH A,R1INC ANEXT:DJNZ R7,LOOPEND此程序段完成的功能:。