《微机原理》练习(分析题)1、以下程序段执行后,A=(),(30H)=()。MOV30H,#0AHMOVA,#0D6HMOVR0,#30HMOVR2,#5EHANLA,R2ORLA,@R0CPLA2、设内部RAM中59H单元的内容为50H,写出当执行下列程序段后寄存器A、R0和内部RAM中50H,51H单元的内容为何值?MOVA,59HMOVR0,AMOVA,#00HMOV@R0,AMOVA,#25HMOV51H,AMOV52H,#70H3、假定(SP)=40H,(3FH)=30H,(40H)=60H。执行下列指令:POPDPHPOPDPL后,DPTR的内容为(),SP的内容是()。4、已知程序ORG2100HSTART:MOVDPTR,#2200HMOVXA,@DPTRRRARRARRARRAANLA,#OFHMOVX@DPTR,AHERE:SJMPHEREORG2200HDATA:DBF8ENDSTART执行后,2200H单元的内容是()5、已知程序,其中(2100H)=58H,(2101H)=68HMOVDPTR,#2100HMOVXA,@DPTRMOVR0,AINCDPTRMOVXA,@DPTRCJNEA,00H,LOOP1SJMPLOOP2L00P1:JNCL00P2MOVA,R0LOOP2:INCDPTRMOVX@DPTR,AHERE:SJMPHERE执行后(2102H)=()6、写出以下程序段运行后,相关寄存器的内容。MOVA,#50HSETBACC.1MOVR2,AANLA,#0FHMOVR3,AXRLA,#0F0HMOVR4,ACPLAPP:LJMPPP7、分析下面的程序段,写出程序执行后的结果(即相关寄存器和相关RAM单元的内容)。MOVR0,#00HMOVR7,#10HMOVA,#50HLOOP:INCR0MOV@R0,AINCADJNZR7,LOOPLOOP1:AJMPLOOP18、在8051片内RAM中,已知(30H)=38H,(38H)=40H,(40H)=48H,(48H)=90H。请分析下面指令,按顺序执行后的结果。MOVA,40HMOVR0,AMOVP1,#0F0HMOV@R0,30HMOVDPTR,#3848HMOV40H,38HMOVR0,30HMOVP0,R0MOV18H,#30HMOVA,@R0MOVP2,P1程序执行后:(30H)=(),(38H)=(),(40H)=(),(48H)=()9、设R0的内容为32H,A的内容为48H,片内RAM的32H单元的内容为80H,40H单元的内容为08H,请指出在执行下列程序段后上述各单元内容的变化。MOVA,@R0MOV@R0,40HMOV40H,AMOVR0,#35H程序执行后:(A)=(),(R0)=(),(32H)=(),(40H)=()10、阅读下列程序,并要求:(1)说明程序的功能;(2)写出涉及的寄存器及片内RAM单元的最后结果运算前(40H)=98H,(41H)=AFH。MOVR0,#40HMOVA,@R0INCR0ADDA,@R0INCR0MOV@R0,ACLRAADDCA,#0INCR0MOV@R0,A11、同上题要求,程序如下(运行前(61H)=F2H,(62H)=CCH):MOVA,61HMOVB,#02HMULABADDA,62HMOV63H,ACLRAADDCA,BMOV64H,A12、下列程序执行过程中,依次写出有关单元中的内容。已知(R0)=34H,(Cy)=1,(1FH)=69H,(20H)=34H,(34H)=A5H。MOVA,1FH;(A)=()ADDCA,20H;(A)=()(Cy)=()CLRA;(A)=()ORLA,@R0;(A)=()RLA;(A)=()ANLA,#39H;(A)=()RRCA;(A)=()(Cy)=()CPLA;(A)=()13、已知(A)=83H,(R0)=17H,(17H)=34H,请写出下列程序执行完后A中的内容。ANLA,#17HORL17H,AXRLA,@R0CPLA14、指出下列指令中划线操作数的寻址方式。MOVA,#16MOV20H,P1MOVA,R0MOVXA,@DPTRMOVCA,@A+DPTRSJMPLOOPANLC,70H