《单片机》读程序题题库答案_第1页
《单片机》读程序题题库答案_第2页
《单片机》读程序题题库答案_第3页
《单片机》读程序题题库答案_第4页
《单片机》读程序题题库答案_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、10分)四、阅读下列程序,注释并填写指令执行后的结果(每题第15页共57页;#30H - R1 (R1)=30H;(R0) -A (A)=20H;(A)+#36H A (A)=56H;(A) -P1(P1)=56H;(R0)+1 -R0 (R0)=21H;(R1)+1 -R0 (R1)=31H;(A)&(R1) -A (A)=10H;累加器A的高低4位交换(A)=01H;累加器A内容压栈;(A) -P1 (P1)=01H;堆栈内容出栈到 B寄存器(B)=01H;(A) -R0 (R0)=01H,2 2200H ; #2200H- DPTR (DPTR)=2200H1、 ORG 0 LJMP S

2、TART ORG 30H START MOV R0,#20HMOV R1,#30H MOV A,R0 ADD A,#36H MOV P1,A INC R0 INC R1 ANL A,R1 SWAP A PUSH ACC MOV P1,A POP B MOV R0,A MOV DPTR SETB C ADDC A, # 0 MOVX DPTR,A END (R0)= 01H(R1)= 31H(B)= 01H(2200H)= 02H2、 ORG 0LJMP START ORG 30H START : MOV SP,#50H;跳转到(PQ = 0030H处;2 20H R0 (R0)=20H;1Cy

3、 (Cy)=1;(A)+0+(Cy) -A (A)=02H;(A) - (DPTR) (2200H)=02H(P1)= 01H ;跳转到(PC)=0030H处;#50H SP (SP)=50HMOVDPTR,#3000H;#3000H- DPTR (DPTR)=3000HCRLA;0-A (A)=0LOOP : MOVX DPTR,A;(A) -(DPTR)INCDPTR;(DPTR)+1 -DPTRDJNZR2,LOOP;(R2)-1 -R2若(R2)不等于零则转移到 LOOPINCDPH;(DPH)+1 -DPH (DPH)=31H (R2)=00H (DPL)=10HINCDPH;(DP

4、H)+1 -DPH (DPH)=32HMOV20H,#36H;#36H (20H) (20H)=36HSETB00H;位地址 00H 置 1 20H.0=1 (20H)=37HMOVA,20H;(20H) A (A)=37HMOVXDPTR,A;(A) - (DPTR) (DPTR)=3210H (3210H)=37HINCA;(A)+1 -A (A)=38HINCA;(A)+1 -A (A)=39HPUSHACC;累加器A内容压栈(SP)=51HXCHA,R2;累加器 A的内容与R2内容互换(A)=00H (R2)=39HPOPDPH;堆栈内容弹到 DPH (DPH)=39HADDA,#55

5、H;(A)+#55H A (A)=55HPUSHACC;累加器A内容压栈END(A)= 55H(R2)= 39H(20H)=37H (DPTR)= 3910H (SP)= 51H3、ORG 0LJMP START;跳转到(PC)=0030H处ORG 30HSTART MOV R0,#30H; #30H R0 (R0)=30HMOV A,#12H;#12HA (A)=12HSETB C;(Cy)=1ADDC A,R0;(A)+(R0)+Cy -A (A)=43HMOV R0,A;(A)-(R0) (30H)=43HMOV R2,#10H;#10H R2 (R2)=10HSWAP A;累加器A高低

6、4位交换(A)=34HINC A;(A)+1 -A (A)=35HMOVDPTR,#2000H;#2000H DPTR (DPTR)=2000HINC DPH;(DPH)+1DPH (DPH)=21HMOV P1,A;(A) -P1 (P1)=35HINC A;(A)+1 -A (A)=36HMOVX DPTR,A;(A) - (DPTR) (2100H)=36HXCH A,R0;(A) R0 (A)=30H (R0)=36HRL A;累加器A内容循环左移(A)=60HPUSH ACC;累加器A的内容入栈RL A;累加器A内容循环左移(A)=0C0HPOP ACC;堆栈内容弹出到累加器A (A

7、)=60HEND(A)= 60H(R0)= 36H (DPTR)=2100H(P1)= 35H(30H)= 43H4、ORG 0LJMP START;跳转到(PC)=0030H处ORG 30HSTART: MOV SP,#50H;#50H SP (SP)=50HMOV DPTR,#3000H;#3000H- DPTR (DPTR)=3000HMOV R0,#20H;#20H R0 (R0)=20HMOV A,#23H;#23H A (A)=23HMOV R2,#0FH;#0FH R2 (R2)=0FHSETB 01H;置位 20H.i (20H.1)=1SETB C;置位 Cy (Cy)=1A

8、DDC A,R0;(A)+(R0)+Cy - A (A)=26HINC R0;(R0)+1 - R0 (R0)=21HMOV R0,A;(A) - (R0) (21H)=26HLOOP DJNZ R2, LOOP;(R2)-1 -R2若R2内容不等于零则转移SWAP A;累加器A内容的高低4位交换(A)=62HPUSH ACC;累加器A内容入栈INC DPH;(DPH)+1-DPH (DPH)=31HMOVX DPTR,A;(A) - (DPTR) (3100H)=62HPOPB;堆栈内容弹出到 B (B)=62HRRA;累加器A内容循环右移(A)=31HADD ,A,B;(A)+(B) -A

9、 (A)=93HMOVP1,A;(A) - P1(P1)=93HEND(21H)= 26H(R2)= 00H(A)=93H(B)= 62H(3100H)= 62H5、ORG 0LJMPSTART;跳转到(PC) = 0030H处ORG30HSTART :MOV DPTR,#1000H;#1000H DPTR (DPTR)=1000HMOVA,#13H;#13H A (A)=13HMOVR0,#20H;#20H R0 (R0)=20HSETBC;1 Cy (Cy)=1MOVR0,A;(A) - (R0) (20H)=13HRLCA;累加器A的内容带进位循环左移(A)=27HXCHA,R0;累加器

10、 A的内容与20H单元的内容互换(A)=13H (20H)=27HPUSHACC;累加器A的内容入栈POPDPL;堆栈内容弹出到 DPL (DPL)=13HMOVX DPTR,A;(A) -(DPTR) (1013H)=13HDECA;(A) -1 - A (A)=12HPUSHDPH;DPH内容压栈POPB;堆栈内容弹出到 B (B)=10HADDA,B;(A)+(B) A (A)=22HMOVP1,A;(A) -P1 (P1)=22HCLRA;累加器A内容清零ADDA,B;(A)+(B) A (A)=10HEND(P1)= 22H(B)= 10H(20H)=27H (DPTR)= 1013

11、H(R0)= 20H6、ORG 0LJMPSTART;跳转到(PQ = 0030H处ORG30HSTARTMOV SP,#50H;#50H SP (SP)=50HMOVR0,#20H;#20H R0 (R0)=20HMOVMOVR2,#10HA,#24H;#10H R2 (R2)=10H;#24H A (A)=24HLOOP :MOV R0,A;(A) (R0)INCR0;(R0)+1 -R0DJNZR2,LOOP;(R2)-1 -R2 若R2内容不等于0则跳转到LOOPSETB00H;1 位地址为 00H 的位 (20H.0)=1 (20H)=25HSETBC;1 Cy (Cy)=1ADDC

12、A,#00H;(A)+00H+(Cy) -A (A)=25HSWAPA;累加器A内容高低四位互换(A)=52HPUSHACC;累加器A内容压栈POPDPH;堆栈内容弹出到 DPH (DPH)=52HPUSHACC;累加器A内容压栈POPB;堆栈内容弹出到 B (B)=52HMOVA,R2;(R2) A (A)=00HMOVDPL,A;(A) -DPL (DPL)=00HMOVA,B; (B)-A (A)=52HPUSHACC;累加器A内容压栈(SP)=51HEND(A)= 52H(R2)= 00H(20H)= 25H(DPTR)= 5200H(SP)= 51H7、ORG0LJMPSTART;跳

13、转到(PC = 0030H处ORG30HSTART MOVDPTR,#2100H; #2100H- DPTR (DPTR)=2100HCLRA;0- A (A)=00HMOVR1,#30H;#30H R1 (R1)=30HSETBC;1Cy (Cy)=1ADDCA,R1;(A)+(R1)+Cy -A (A)=31HMOVR1,A;(A) (R1) (30H)=31HPUSHACC;累加器A的内容压栈POPDPL;堆栈内容弹出到 DPL (DPL)=31HRRA;累加器A的内容循环右移(A)=98HMOVR0,A;(A) R0 (R0)=98HORLA,#24H;(A) or 24H -A (A

14、)=0BCHMOVP1,A;(A) - P1 (P1)=0BCHSWAPA;累加器A的内容高低四位交换 (A)=0CBHMOVDPH,A;(A) DPH (DPH)=0CBHMOVB,#02H;#02H B (B)=02HADDA,B;(A)+(B) - A (A)=0CDHCLRACC.3;0- ACC.3 (A)=0C5HSWAPA;累加器A的内容高低四位交换 (A)=5CHEND(A)= 5CH(R0)= 98H (DPTR)=0CB31H (P1)= 0BCH (30H)= 31H8、ORG 0LJMP START;跳转到(PC) = 0030H处ORG 30HSTART : MOV

15、SP,#50H;#50HSP (SP)=50HMOVR3,#10H;#10H R3 (R3)=10HCLRA;累加器A内容清零(A)=00HMOVR0,#20H;#20H R0 (R0)=20HLOOP : MOV R0,A;(A) (R0) (20H)=00HINCR0;(R0)+1R0 (20H)=01HDJNZR3,LOOP;(R3)-1 -R3若R3不等于零则跳转到 LOO既SETB00H;1 位地址 00H位(20H.0)=1 (20H)=01HSETBC;1Cy (Cy)=1SUBBA,#00H;(A)-00H-Cy -A (A)=0FFHMOVDPL,A;(A) DPL (DPL

16、)=0FFHPUSHACC;累加器A的内容压栈MOVA,R3;(R3) A (A)=00HMOVDPH,A;(A) DPH (DPH)=00HPOPACC;堆栈内容弹出到 A (A)=0FFHMOVXDPTR,A;(A) -(DPTR) (00FFH)=0FFHANLA,#55H;(A) and 55H A (A)=55HPUSHACC;累加器A的内容压栈(SP)=51HCLRA;累加器A内容清零(A)=00HEND(A)= 00H(R3)= 00H(20H)= 01H (DPTR)= 00FFH (SP)= 51HLJMPORGSTART30H;跳转到(PC) = 0030H处START M

17、OV R0,#30H;#30HR0 (R0)=30HMOVR1,#20H;#20H - R1 (R1)=20HMOVA,R0;(R0) A (A)=30HADDA,#37H;(A)+#36H A (A)=67HMOVP1,A;(A) -P1(P1)=67HINCR0;(R0)+1 -R0 (R0)=31HINCR1;(R1)+1 -R0 (R1)=21HANLA,R1;(A)&(R1) - A (A)=21HSWAPA;累加器A的高低4位交换(A)=12HPUSHACC;累加器A内容压栈MOVP1,A;(A) - P1 (P1)=12HSWAPA;累加器A的高低4位交换(A)=21HPOPB;

18、堆栈内容出栈到 B寄存器(B)=12HMOVR0,A;(A) - R0 (R0)=21HMOVDPTR,#2200H ; #2200H- DPTR (DPTR)=2200HSETBC;1 Cy (Cy)=1ADDCA,B;(A)+(B)+(Cy) -A (A)=34HMOVXENDDPTR,A;(A) (DPTR) (2200H)=34H9、ORG 0(R0)= 21H(R1)= 21H(P1)= 12H(B)= 12H(2200H)= 34H10、ORG 0LJMPORGSTART30H;跳转到(PC)=0030H处START :MOV SP,#50H;#50H SP (SP)=50HMOV

19、 R2,#20H;#20H R2 (R2)=20HMOVDPTR,#3000H;#3000H- DPTR (DPTR)=3000HCLRA;0-A (A)=0LOOPMOVX DPTR,A;(A) - (DPTR)INCDPTR;(DPTR)+1DPTRDJNZR2,LOOP;(R2)-1 R2若(R2)不等于零则转移到 LOOPINCDPH;(DPH)+1DPH (DPH)=31H (R2)=00H (DPL)=20HINCDPH;(DPH)+1DPH (DPH)=32HMOV20H,#38H;#36H (20H) (20H)=38HSETB01H;位地址 01H置 1 20H.1=1 (2

20、0H)=3AHMOVA,20H;(20H) A (A)=3AHMOVXDPTR,A;(A) (DPTR) (DPTR)=3220H (3220H)=3AHINCA;(A)+1 -A (A)=3BHINCA;(A)+1 -A (A)=3CHPUSHACC;累加器A内容压栈XCHA,R2;累加器 A的内容与R2内容互换(A)=00H (R2)=3CHPOPDPH;堆栈内容弹到 DPH (DPH)=3CHADDA,#55H;(A)+#55H A (A)=55HPUSHACC;累加器A内容压栈,(SP)=51HEND(A)= 55H(R2)= 3CH(20H)= 3AH (DPTR)= 3C20H (

21、SP)= 51H11、 ORG0LJMPSTART;跳转到(PC)=0030H处ORG 30HSTART MOV R0,#20H;#20H R0 (R0)=20HMOVA,#31H;#31HA (A)=31HSETBC;(Cy)=1ADDCA,R0;(A)+(R0)+Cy -A (A)=52HMOVR0,A;(A) (R0) (20H)=52HSWAPA;累加器A高低4位交换(A)=25HDECA;(A)-1 -A (A)=24HMOVDPTR,#2000H;#2000H DPTR (DPTR)=2000HINCDPH;(DPH)+1 -DPH (DPH)=21HDECDPL;(DPL)-1

22、-DPL (DPL)=0FFHMOVP1,A;(A) -P1 (P1)=24HINCA;(A)+1 -A (A)=25HMOVXDPTR,A;(A) - (DPTR) (21FFH)=25HXCHA,R0;(A) R0 (A)=20H (R0)=25HRLA;累加器A内容循环左移(A)=40HPUSHACC;累加器A的内容入栈RLA;累加器A内容循环左移(A)=80HPOP ACC;堆栈内容弹出到累加器A (A)=40HEND(A)= 40H(R0)= 25H (DPTR)= 21FFH (P1)= 24H(20H)= 52H12、ORG0LJMPORGSTART30H;跳转到(PC)=003

23、0H处START: MOV SP,#50H;#50H SP (SP)=50HMOVDPTR,#2000H;#3000H- DPTR (DPTR)=2000HMOV20H,#06H;#06H 20H (20H)=06HMOVR0,#20H;#20H R0 (R0)=20HMOVA,#35H;#35H A (A)=35HMOVR2,#10H;#10H R2 (R2)=10HSETB00H;置位 20H.0 (20H.0)=1 (20H)=07HSETBC;置位 Cy (Cy)=1ADDCA,R0;(A)+(R0)+Cy - A (A)=3DHINCR0;(R0)+1 - R0 (R0)=21HMO

24、VR0,A;(A) - (R0) (21H)=3DHLOOPDJNZ R2, LOOP;(R2)-1 -R2若R2内容不等于零则转移SWAPA;累加器A内容的高低4位交换(A)=0D3HPUSHACC;累加器A内容入栈INCDPH;(DPH)+1- DPH (DPH)=21HMOVXDPTR,A;(A) -(DPTR) (2100H)=0D3HPOPB;堆栈内容弹出到 B (B)=0D3HRRA;累加器A内容循环右移(A)=0E9HADDA,B;(A)+(B) A (A)=0BCHMOVENDP1,A;(A) -P1(P1)=0BCH(21H)=3DH(R2)= 00H(A)= 0BCH (B

25、)= 0D3H (2100H)= 0D3H13、 ORG 0LJMP START;跳转到(PC) = 0030H处ORG 30HSTART : MOV DPTR,#2000H; #2000H DPTR (DPTR)=2000HMOV A,#36H; #36H A (A)=36HMOVR0,#30H;#30H R0 (R0)=30HSETBC;1 Cy (Cy)=1MOVR0,A;(A) (R0) (30H)=36HRLCA;累加器A的内容带进位循环左移(A)=6DHXCHA,R0;累加器 A的内容与20H单元的内容互换(A)=36H (30H)=6DHPUSHACC;累加器A的内容入栈POPD

26、PL;堆栈内容弹出到 DPL (DPL)=36HMOVXDPTR,A;(A) -(DPTR) (2036H)=36HDECA;(A) -1 - A (A)=35HPUSHDPH;DPH内容压栈POPB;堆栈内容弹出到 B (B)=20HADDA,B;(A)+(B) A (A)=55HMOVP1,A;(A) -P1 (P1)=55HCLRA;累加器A内容清零ADDA,B;(A)+(B) A (A)=20HEND(P1)= 55H(B)= 20H(30H)=6DH (DPTR)= 2036H(R0)= 30H14、ORGLJMP;0START;跳转到(PQ = 0030H处ORGSTART30HM

27、OV SP,#60H;#60H SP (SP)=60HMOVR0,#20H;#20H R0 (R0)=20HMOVR2,#10H;#10H R2 (R2)=10HMOVA,#24H;#24H A (A)=24HLOOP :MOV R0,A;(A)(R0)INCR0;(R0)+1 -R0DJNZR2,LOOP;(R2)-1 -R2 若R2内容不等于0则跳转到LOOPSETB01H;1 位地址为 01H 的位 (20H.1)=1 (20H)=26HSETBC;1 Cy (Cy)=1ADDCA,20H;(A)+(20H)+(Cy) -A (A)=4BHSWAPA;累加器A内容高低四位互换(A)=0B

28、4HPUSHACC;累加器A内容压栈POPDPH;堆栈内容弹出到 DPH (DPH)=0B4HPUSHACC;累加器A内容压栈POPB;堆栈内容弹出到 B (B)=0B4HMOVA,R2;(R2) A (A)=00HMOVDPL,A;(A) -DPL (DPL)=00HADDA,B;(A)+(B) -A (A)=0B4HPUSHACC;累加器A内容压栈(SP)=61HEND(A)= 0B4H(R0)= 30H(20H)= 26H (DPTR)= 0B400H (SP)= 61H15、ORG0LJMPSTART;跳转到(P。= 0030H处ORG30HSTART MOV DPTR,#1100H;

29、 #1100H DPTR (DPTR)=1100HCLRA;0- A (A)=00HMOVR1,#20H;#20H R1 (R1)=20HSETBC;1Cy (Cy)=1ADDCA,R1;(A)+(R1)+Cy -A (A)=21HMOVR1,A;(A) (R1) (20H)=21HINCA;(A)+1 A (A)=22HINCA;(A)+1 A (A)=23HPUSHACC;累加器A的内容压栈POPDPL;堆栈内容弹出到 DPL (DPL)=23HRRA;累加器A的内容循环右移(A)=91HMOVR0,A;(A) - R0 (R0)=91HORLA,#24H;(A) or #24H - A

30、(A)=0B5HMOVP1,A;(A) - P1 (P1)=0B5HSWAPA;累加器A的内容高低四位交换(A)=5BHMOVDPH,A;(A) DPH (DPH)=5BHMOVB,#02H;#02H B (B)=02HADDA,B;(A)+(B) - A (A)=5DHCLRACC.4;0- ACC.4 (A)=4DHSWAPA;累加器A的内容高低四位交换(A)=0D4HEND(A)=D4H(R0)= 91H(DPTR)= 5B23H(P1)= 0B5H (20H)= 21HLJMPSTART;跳转到(PC) = 0030H处ORG30HSTART : MOV SP,#60H;#60H SP

31、 (SP)=60HMOVR3,#20H;#20H R3 (R3)=20HMOVA,#20H;#20H A (A)=20HMOVR0,#20H;#20H R0 (R0)=20HLOOP : MOV R0,A;(A) (R0)INCR0;(R0)+1 R0DJNZR3,LOOP;(R3)-1 -R3若R3不等于零则跳转到 LOO既SETB02H;1 位地址 02H位(20H.2)=1 (20H)=24HSETBC;1Cy (Cy)=1SUBBA,20H;(A)-(20H)-Cy - A (A)=0FBHMOVDPL,A;(A) DPL (DPL)=0FBHPUSHACC;累加器A的内容压栈MOVA

32、,R3;(R3) A (A)=00HMOVDPH,A;(A) DPH (DPH)=00HPOPACC;堆栈内容弹出到 A (A)=0FBHMOVXDPTR,A;(A) (DPTR) (00FBH)=0FBHANLA,#55H;(A) and 55H -A (A)=51HPUSHACC;累加器A的内容压栈(SP)=61HSWAPA;累加器A内容高低4位交换(A)=15HEND(A)= 15H(R3)= 00H(20H)=24H (DPTR)= 00FBH (SP)= 61H17、ORG0MOVR2,#8;#8-R2(R2)=8HMOVR0,#30H ;#30H-R0 (R0)=30HCLRA;

33、#0-A(A)=0CPLA;累加器A的内容取反,(A)=0FFHLOOP: MOVR0,A;(A)- (R0) (30H)(37H)=0FFH16、ORG 0INC R0 ; (R0)+1-R0DJNZ R2,LOOP ; (R2)-1 - R2 , (R2),0 则转移到 LOO也MOVB,R2; (R2) -B (B)=(R2)=0INC B ; (B)+1 -B (B)=1MOV A,R0; (R0) -A (A)=(R0)=38HCLR C; 0 - Cy Cy=0ADDCAB; (A)+(B)+Cy - A (A)=39HMOVR0,A;(A) -R0 (R0)=(A)=39HRLC

34、 A ;累加器A的内容带进位左移,(A)=72HMOVDPTR,#1234H ; #1234H -DPTR (DPTR)=1234HMOVX PTR,A ; (A) -(DPTR) (1234H)=72HSWAP APUSH ACCPOP DPH累加器A的内容高低4位交换,(A) =27H累加器内容入栈堆栈内容弹出到 DPH (DPH =27HEND(R0)= 39H(A)= 27H (33H)= 0FFH (DPTR)= 2734H(1234H)= 72H评分办法:指令注释占 5分,对于程序段注释部分写对的学生可酌情给1-4分;程序段执行结果每空 1分,共5分。18、 ORG 0MOV SP

35、,#60H; #60H -SP (SP)=60HMOV DPTR,#1000H ; #1000H -DPTR (DPTR)=1000HMOV R0,#40H; #40H -R0 (R0)=40HMOV A,#40H; #40H -A(A)=40HMOV R2,#8; #8 -R2(R2)=08HLOOP: MOV R0,A; (A) -(R0) (40H)(47H)=40HINC R0 ; (R0)+1 -R0DJNZ R2,LOOP ; (R2)-1 -R2 , (R2),0 则转移到 LOOP处MOV R0,#40H; #40H -R0 (R0)=40HMOV R2,#8; #8 -R2(

36、R2)=08HLOOP1: MOV A,R0; (R0)-AINC A ; (A)+1 -AANL A,#0FH ; (A) and #0FH -AMOVX DPTR,A ; (A) -(DPTR) (1000H)(1007H)=01HINC R0 ; (R0)+1 -R0DJNZPUSHPOPPUSHPOPADDPUSHENDR2,LOOP1 ; (R2)-1 -R2 , (R2)丰 0;则转移到 LOOP1 处DPL; DPL内容入栈(SP)=61HB;堆栈内容弹出到 B寄存器,(B) =08H, (SP)=60HDPH; DPH内容压栈(SP)=61HACC;堆栈内容弹出到累加器 A ,

37、 (A) = 10H,(SP)=60HA,B; (A)+(B) -A (A)=18HB;寄存器B内容压栈(SP)=61H(A尸18H(B):=08H(42H)=40H(1004H)= 01H(SP)= 61H评分办法:指令注释占5分,对于程序段注释部分写对的学生可酌情给14分;程序段执行结果每空19、ORG 0MOV R0,#20H; #20H-R0 (R0)=20HMOV A,#40H; #40H-A (A)=40HSETB C; 1-Cy Cy=1ADDC A,R0; (A)+(R0)+Cy-A (A)=61HMOV R2,#8; #8-R2 (R2)=08HLOOP: MOV R0,A;

38、 (A)-(R0) (20H)(27H)=61HINC R0; (R0)+1-R0DJNZ R2,LOOP ; (R2)-1-R2 (R2),0 则跳转到MOVP1,R2; (R2)-P1 (P1)=0CLR 00H; 0-20H.0 (20H)=60HMOVA,20H; (20H)-A (A)=60HPUSH ACC;累加器A的内容入栈POP DPH;弹栈至U DPH (DPH)=60HMOV A,25H; (25H)-A(A)=61HMOV DPL,A ; (A)-DPL (DPL)=61H ENDLOOP&(20H)=60H(22H)= 61H(DPTR)=6061H(P1)= 00H(

39、R0)= 28HINC1分,评分办法:指令注释占 5分,对于程序段注释部分写对的学生可酌情给1-4分;程序段执行结果每空 1分,DPTR ; (DPTR)+1 -DPTR20、ORG0MOVSP,#50H;#50H-SP (SP)=50HMOVR0,#20H;#20H-R0 (R0)=20HMOVB,R0;(R0)-B(B)=20HMOVA,#30H;#30H-A (A)=30HADDA,B;(A)+(B)-A (A)=50HSETBc;1-Cy Cy=1RRCA;累加器A的内容带进位循环右移(A)=0A8H Cy=0MOVR0,A;(A)-(R0) (20H)=0A8HSETB00H;1-2

40、0H.0 (20H)=0A9HMOVDPTR,#1000H ; #1000H-DPTR (DPTR)=1000HMOVXDPTR,A ; (A)-(DPTR) (1000H)=0A8HINCDPL;(DPL)+1-DPL (DPL)=01H (DPTR)=1001HMOVA,R0;(R0)-A (A)=0A9HMOVXDPTR,A ; (A)-(DPTR) (1001H)=0A9HSWAPA;累加器A的内容进行高低四位交换(A)=9AHORLA,#0FH;(A) or #0FH-A (A)=9FHPUSHACC;累加器A的内容入栈 (SP)=51HPOPDPL ;弹栈至U DPL (DPL)=

41、9FH (DPTR)=109FH (SP)=50HPUSHACC;累加器A的内容入栈 (SP)=51HEND(Cy)= 0(SP)= 51H (DPTR)= 109FH(1000H)= 0A8H(1001H)= 0A9H 评分办法:指令注释占 5分,对于程序段注释部分写对的学生可酌情给1-4分;程序段执行结果每空 1分,共5分21、 ORG 0MOVR0,#30H; #30H-R0 (R0)=30HMOV R2,#8; #8-R2(R2)=8LOOP: MOV A,R2 ; (R2)-A (A)=08HMOV R0,A; (A)-(30H) (30H)(37H)=08H01HINC R0 ;

42、(R0)+1-R0DJNZ R2,LOOP ; (R2)-1-R2若(R2),0 贝U;跳转到 LOO也MOV A,30H; (30H)-A (A)=08HMOV B,A ; (A)-B(B)=08H第16页共57页MOVA,31H; (31H)-A (A)=07HADD A,B ; (A)+(B)-A (A)=0FHMOVDPTR,#1000H ; #1000H-DPTR (DPTR)=1000HMOVX DPTR,A ; (A)-(DPTR) (1000H)=0FHSWAP A ;累加器A的内容高低四位交换(A)=0F0HDEC DPL ; (DPL)-1-DPL (DPL)=0FFHMO

43、VX DPTR,A ; (A)-(DPTR) (10FFH)=0F0HSETB C ; 1-Cy (Cy)=1RRC A ;累加器A的内容带进位循环右移(A)=0F8HMOV R0,A ; (A)-R0(R0)=0F8HEND(R0)= 0F8H (Cy)= 0 (32H)= 06H (DPTR)= 10FFH (1000H)= 0FH 评分办法:指令注释占5分,对于程序段注释部分写对的学生可酌情给1-4分;程序段执行结果每空1分,分。22、 ORG 0MOVSP,#60H;#60H-SP(SP)=60HMOVR0,#20H;#20H-R0(R0)=20HMOV R2,#8; #8-R2(R2

44、)=08HMOVA,#0EEH; #0EEH-A(A)=0EEHCPL A ;累加器A的内容取反(A)=11HLOOP: MOV R0,A; (A)-(R0) (20H)(27H)=11HINCR0; (R0)+1-R0DJNZR2,LOOP;(R2)-1-R2若(R2) ,0 则跳车t到 LOO也。MOVA,R0;(R0)-A(A)=28HSETBc;1-Cy(Cy)=1ADDCA,21H;(A)+(21H)+Cy-A (A)=3AH (Cy)=0MOVP1,A;(A)-P1(P1)=3AHCLR00H;0-20H.0(20H)=10HMOVA,20H;(20H)-A(A)=10HSWAPA

45、;累加器内容高低四位交换(A)=01HPUSHACC;累加器A的内容入栈(SP)=61HMOVDPH,#10H;#10H-DPH (DPH)=10HPOPDPL;堆栈内容弹出到 DPL (DPL)=01H (DPTR)=1001H (SP)=60HMOVXDPTR,A;(A)-(DPTR) (1001H)=01HPUSH ACC ;累加器A的内容入栈 (SP)=61HEND(Cy)= 0(P1)= 3AH (R2)= 00H (DPTR)= 1001H(SP)= 61H23、 ORG 0MOVR0,#20H; #20H-R0 (R0)=20HMOVR2,#8; #8-R2(R2)=08HMOV

46、A,#0F8H; #0F8H-A (A)=0F8HANL A,#0FH ; (A) and #0FH-A (A)=08HLOOP: MOV R0,A; (A)-(R0) (20H)(27H)=08HINC R0 ; (R0)+1-R0若(R2) w 0则跳转到LOOPDJNZ R2,LOOP ; (R2)-1-R2SETB 00H; 1-20H.0 (20H)=09HMOV A,20H; (20H)-A (A)=09HSWAP A ;累加器A的内容高低四位交换,(A)=90HMOVP1,A; (A)-P1(P1)=90HADDA,21H; (A)+(21H)-A (A)=98HMOVDPTR,

47、#1000H ; #1000H-DPTR (DPTR)=1000HMOVX DPTR,A ; (A)-(DPTR) (1000H)=98HORL A,#0FH ; (A) or #0FH-A (A)=9FHINC DPTR ; (DPTR)+1-DPTR , (DPTR)=1001HMOVX DPTR,A ; (A)-(DPTR)(1001H)=9FHDECDPL; (DPL)-1-DPL (DPL)=00H (DPTR)=1000HDECDPL; (DPL)-1-DPL (DPL)=0FFH (DPTR)=10FFHEND(R2)= 00H(P1)= 90H 24、(DPTR)= 10FFH

48、(1000H)= 98H(1001H)= 9FH MOVSP,#60H;#60H-SP (SP)=60HMOVA,#88H;#88H-A(A)=88HCPLA;累加器A的内容取反 (A)=77HADDA,#1;(A)+1-A(A)=78HORG0RRCA;累加器A的内容带进位循环右移(A)=0BCHMOVDPTR,#2000H ; #2000H-DPTR (DPTR)=2000HMOVXDPTR,A;(A)-(DPTR) (2000H)=0BCHMOV20H,A;(A)-20H (20H)=0BCHSETB00H;1-20H.0 (20H)=0BDHMOVA,20H;(20H)-A (A)=0BDHMOVR0,#0F0H;#0F0H-R0 (R0)=0F0HORLA,R0;(A)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论