南航五院单片机回忆版真题
《单片机》读程序题题库答案1

四、阅读下列程序,注释并填写指令执行后的结果(每题10分)1、 ORG 0LJMP START ;跳转到(PC)=0030H处ORG 30HSTART:MOV R0,#20H ;#20H->R0 (R0)=20HMOV R1,#30H ; #30H->R1 (R1)=30HMOV A,R0 ;(R0)->A (A)=20HADD A,#36H ;(A)+#36H->A (A)=56HMOV P1,A ;(A)->P1 (P1)=56HINC R0 ;(R0)+1->R0 (R0)=21HINC R1 ;(R1)+1->R0 (R1)=31HANL A,R1 ;(A)&(R1)->A (A)=10HSWAP A ;累加器A的高低4位交换 (A)=01HPUSH ACC ;累加器A内容压栈MOV P1,A ;(A)->P1 (P1)=01HPOP B ;堆栈内容出栈到B寄存器 (B)=01HMOV R0,A ;(A)->R0 (R0)=01HMOV DPTR,#2200H ;#2200H->DPTR (DPTR)=2200HSETB C ;1->Cy (Cy)=1ADDC A,#0 ;(A)+0+(Cy)->A (A)=02HMOVX @DPTR,A ;(A)->(DPTR) (2200H)=02HEND(R0)= 01H (R1)= 31H (P1)= 01H(B)= 01H (2200H)= 02H2、 ORG 0LJMP START ;跳转到(PC)=0030H处ORG 30HSTART:MOV SP,#50H ;#50H->SP (SP)=50H第1页共57页MOV R2,#10H ;#10H->R2 (R2)=10HMOV DPTR,#3000H ;#3000H->DPTR (DPTR)=3000HCRL A ;0->A (A)=0LOOP: MOVX @DPTR,A ;(A)->(DPTR)INC DPTR ;(DPTR)+1->DPTRDJNZ R2,LOOP ;(R2)-1->R2 若(R2)不等于零则转移到LOOP处INC DPH ;(DPH)+1->DPH (DPH)=31H (R2)=00H (DPL)=10H INC DPH ;(DPH)+1->DPH (DPH)=32HMOV 20H,#36H ;#36H->(20H) (20H)=36HSETB 00H ;位地址00H置1 20H.0=1 (20H)=37HMOV A,20H ;(20H)->A (A)=37HMOVX @DPTR,A ;(A)->(DPTR) (DPTR)=3210H (3210H)=37HINC A ;(A)+1->A (A)=38HINC A ;(A)+1->A (A)=39HPUSH ACC ;累加器A内容压栈 (SP)=51HXCH A,R2 ;累加器A的内容与R2内容互换 (A)=00H (R2)=39H POP DPH ;堆栈内容弹到DPH (DPH)=39HADD A,#55H ;(A)+#55H->A (A)=55HPUSH ACC ;累加器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 ;#12H->A (A)=12HSETB C ;(Cy)=1ADDC A,R0 ;(A)+(R0)+Cy->A (A)=43HMOV @R0,A ;(A)->(R0) (30H)=43H第2页共57页SWAP A ;累加器A高低4位交换 (A)=34HINC A ;(A)+1->A (A)=35HMOV DPTR,#2000H ;#2000H->DPTR (DPTR)=2000HINC DPH ;(DPH)+1->DPH (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)=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.1 (20H.1)=1SETB C ;置位Cy (Cy)=1ADDC 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)=62H PUSH ACC ;累加器A内容入栈INC DPH ;(DPH)+1->DPH (DPH)=31HMOVX @DPTR,A ;(A)->(DPTR) (3100H)=62H第3页共57页POP B ;堆栈内容弹出到B (B)=62HRR A ;累加器A内容循环右移 (A)=31HADD A,B ;(A)+(B)->A (A)=93HMOV P1,A ;(A)->P1 (P1)=93HEND(21H)= 26H (R2)= 00H (A)= 93H (B)= 62H (3100H)= 62H5、 ORG 0LJMP START ;跳转到(PC)=0030H处ORG 30HSTART: MOV DPTR,#1000H ;#1000H->DPTR (DPTR)=1000HMOV A,#13H ;#13H->A (A)=13HMOV R0,#20H ;#20H->R0 (R0)=20HSETB C ;1->Cy (Cy)=1MOV @R0,A ;(A)->((R0)) (20H)=13HRLC A ;累加器A的内容带进位循环左移 (A)=27HXCH A,@R0 ;累加器A的内容与20H单元的内容互换 (A)=13H (20H)=27H PUSH ACC ;累加器A的内容入栈POP DPL ;堆栈内容弹出到DPL (DPL)=13HMOVX @DPTR,A ;(A)->(DPTR) (1013H)=13HDEC A ;(A)-1->A (A)=12HPUSH DPH ;DPH内容压栈POP B ;堆栈内容弹出到B (B)=10HADD A,B ;(A)+(B)->A (A)=22HMOV P1,A ;(A)->P1 (P1)=22HCLR A ;累加器A内容清零ADD A,B ;(A)+(B)->A (A)=10HEND(P1)= 22H (B)= 10H (20H)= 27H (DPTR)= 1013H (R0)= 20H6、 ORG 0LJMP START ;跳转到(PC)=0030H处ORG 30HSTART:MOV SP,#50H ;#50H->SP (SP)=50HMOV R0,#20H ;#20H->R0 (R0)=20H第4页共57页MOV R2,#10H ;#10H->R2 (R2)=10HMOV A,#24H ;#24H->A (A)=24HLOOP: MOV @R0,A ;(A)->((R0))INC R0 ;(R0)+1->R0DJNZ R2,LOOP ;(R2)-1->R2 若R2内容不等于0则跳转到LOOP处SETB 00H ;1->位地址为00H的位 (20H.0)=1 (20H)=25HSETB C ;1->Cy (Cy)=1ADDC A,#00H ;(A)+00H+(Cy)->A (A)=25HSWAP A ;累加器A内容高低四位互换 (A)=52HPUSH ACC ;累加器A内容压栈POP DPH ;堆栈内容弹出到DPH (DPH)=52HPUSH ACC ;累加器A内容压栈POP B ;堆栈内容弹出到B (B)=52HMOV A,R2 ;(R2)->A (A)=00HMOV DPL,A ;(A)->DPL (DPL)=00HMOV A,B ; (B)->A (A)=52HPUSH ACC ;累加器A内容压栈 (SP)=51HEND(A)= 52H (R2)= 00H (20H)= 25H (DPTR)= 5200H (SP)= 51H7、 ORG 0LJMP START ;跳转到(PC)=0030H处ORG 30HSTART: MOV DPTR,#2100H ;#2100H->DPTR (DPTR)=2100HCLR A ;0->A (A)=00HMOV R1,#30H ;#30H->R1 (R1)=30HSETB C ;1->Cy (Cy)=1ADDC A,R1 ;(A)+(R1)+Cy->A (A)=31HMOV @R1,A ;(A)->((R1)) (30H)=31HPUSH ACC ;累加器A的内容压栈POP DPL ;堆栈内容弹出到DPL (DPL)=31HRR A ;累加器A的内容循环右移 (A)=98HMOV R0,A ;(A)->R0 (R0)=98HORL A,#24H ;(A) or 24H->A (A)=0BCHMOV P1,A ;(A)->P1 (P1)=0BCH第5页共57页SWAP A ;累加器A的内容高低四位交换 (A)=0CBHMOV DPH,A ;(A)->DPH (DPH)=0CBHMOV B,#02H ;#02H->B (B)=02HADD A,B ;(A)+(B)->A (A)=0CDHCLR ACC.3 ;0->ACC.3 (A)=0C5HSWAP A ;累加器A的内容高低四位交换 (A)=5CHEND(A)= 5CH (R0)= 98H (DPTR)= 0CB31H (P1)= 0BCH (30H)= 31H8、 ORG 0LJMP START ;跳转到(PC)=0030H处ORG 30HSTART: MOV SP,#50H ;#50H->SP (SP)=50HMOV R3,#10H ;#10H->R3 (R3)=10HCLR A ;累加器A内容清零 (A)=00HMOV R0,#20H ;#20H->R0 (R0)=20HLOOP: MOV @R0,A ;(A)->((R0)) (20H)=00HINC R0 ;(R0)+1->R0 (20H)=01HDJNZ R3,LOOP ;(R3)-1->R3 若R3不等于零则跳转到LOOP处SETB 00H ;1->位地址00H位 (20H.0)=1 (20H)=01HSETB C ;1->Cy (Cy)=1SUBB A,#00H ;(A)-00H-Cy->A (A)=0FFHMOV DPL,A ;(A)->DPL (DPL)=0FFHPUSH ACC ;累加器A的内容压栈MOV A,R3 ;(R3)->A (A)=00HMOV DPH,A ;(A)->DPH (DPH)=00HPOP ACC ;堆栈内容弹出到A (A)=0FFHMOVX @DPTR,A ;(A)->(DPTR) (00FFH)=0FFHANL A,#55H ;(A) and 55H->A (A)=55HPUSH ACC ;累加器A的内容压栈 (SP)=51HCLR A ;累加器A内容清零 (A)=00HEND(A)= 00H (R3)= 00H (20H)= 01H (DPTR)= 00FFH (SP)= 51H第6页共57页9、 ORG 0LJMP START ;跳转到(PC)=0030H处ORG 30HSTART: MOV R0,#30H ;#30H->R0 (R0)=30HMOV R1,#20H ; #20H->R1 (R1)=20HMOV A,R0 ;(R0)->A (A)=30HADD A,#37H ;(A)+#36H->A (A)=67HMOV P1,A ;(A)->P1 (P1)=67HINC R0 ;(R0)+1->R0 (R0)=31HINC R1 ;(R1)+1->R0 (R1)=21HANL A,R1 ;(A)&(R1)->A (A)=21HSWAP A ;累加器A的高低4位交换 (A)=12HPUSH ACC ;累加器A内容压栈MOV P1,A ;(A)->P1 (P1)=12HSWAP A ;累加器A的高低4位交换 (A)=21HPOP B ;堆栈内容出栈到B寄存器 (B)=12HMOV R0,A ;(A)->R0 (R0)=21HMOV DPTR,#2200H ;#2200H->DPTR (DPTR)=2200HSETB C ;1->Cy (Cy)=1ADDC A,B ;(A)+(B)+(Cy)->A (A)=34HMOVX @DPTR,A ;(A)->(DPTR) (2200H)=34HEND(R0)= 21H (R1)= 21H (P1)= 12H (B)= 12H (2200H)= 34H10、 ORG 0LJMP START ;跳转到(PC)=0030H处ORG 30HSTART: MOV SP,#50H ;#50H->SP (SP)=50HMOV R2,#20H ;#20H->R2 (R2)=20HMOV DPTR,#3000H ;#3000H->DPTR (DPTR)=3000HCLR A ;0->A (A)=0LOOP: MOVX @DPTR,A ;(A)->(DPTR)INC DPTR ;(DPTR)+1->DPTRDJNZ R2,LOOP;(R2)-1->R2 若(R2)不等于零则转移到LOOP处INC DPH ;(DPH)+1->DPH (DPH)=31H (R2)=00H (DPL)=20H第7页共57页INC DPH ;(DPH)+1->DPH (DPH)=32HMOV 20H,#38H ;#36H->(20H) (20H)=38HSETB 01H ;位地址01H置1 20H.1=1 (20H)=3AHMOV A,20H ;(20H)->A (A)=3AHMOVX @DPTR,A ;(A)->(DPTR) (DPTR)=3220H (3220H)=3AHINC A ;(A)+1->A (A)=3BHINC A ;(A)+1->A (A)=3CHPUSH ACC ;累加器A内容压栈XCH A,R2 ;累加器A的内容与R2内容互换 (A)=00H (R2)=3CH POP DPH ;堆栈内容弹到DPH (DPH)=3CHADD A,#55H ;(A)+#55H->A (A)=55HPUSH ACC ;累加器A内容压栈,(SP)=51HEND(A)= 55H (R2)= 3CH (20H)= 3AH (DPTR)= 3C20H (SP)= 51H11、 ORG 0LJMP START ;跳转到(PC)=0030H处ORG 30HSTART: MOV R0,#20H ;#20H->R0 (R0)=20HMOV A,#31H ;#31H->A (A)=31HSETB C ;(Cy)=1ADDC A,R0 ;(A)+(R0)+Cy->A (A)=52HMOV @R0,A ;(A)->(R0) (20H)=52HSWAP A ;累加器A高低4位交换 (A)=25HDEC A ;(A)-1->A (A)=24HMOV DPTR,#2000H ;#2000H->DPTR (DPTR)=2000HINC DPH ;(DPH)+1->DPH (DPH)=21HDEC DPL ;(DPL)-1->DPL (DPL)=0FFHMOV P1,A ;(A)->P1 (P1)=24HINC A ;(A)+1->A (A)=25HMOVX @DPTR,A ;(A)->(DPTR) (21FFH)=25HXCH A,R0 ; (A) R0 (A)=20H (R0)=25HRL A ;累加器A内容循环左移 (A)=40HPUSH ACC ;累加器A的内容入栈RL A ;累加器A内容循环左移 (A)=80H第8页共57页POP ACC ;堆栈内容弹出到累加器A (A)=40HEND(A)= 40H (R0)= 25H (DPTR)= 21FFH (P1)= 24H (20H)= 52H12、 ORG 0LJMP START ;跳转到(PC)=0030H处ORG 30HSTART: MOV SP,#50H ;#50H->SP (SP)=50HMOV DPTR,#2000H ;#3000H->DPTR (DPTR)=2000HMOV 20H,#06H ;#06H->20H (20H)=06HMOV R0,#20H ;#20H->R0 (R0)=20HMOV A,#35H ;#35H->A (A)=35HMOV R2,#10H ;#10H->R2 (R2)=10HSETB 00H ;置位20H.0 (20H.0)=1 (20H)=07HSETB C ;置位Cy (Cy)=1ADDC A,@R0 ;(A)+((R0))+Cy->A (A)=3DHINC R0 ;(R0)+1->R0 (R0)=21HMOV @R0,A ;(A)->((R0)) (21H)=3DHLOOP: DJNZ R2, LOOP ;(R2)-1->R2 若R2内容不等于零则转移SWAP A ;累加器A内容的高低4位交换 (A)=0D3HPUSH ACC ;累加器A内容入栈INC DPH ;(DPH)+1->DPH (DPH)=21HMOVX @DPTR,A ;(A)->(DPTR) (2100H)=0D3HPOP B ;堆栈内容弹出到B (B)=0D3HRR A ;累加器A内容循环右移 (A)=0E9HADD A,B ;(A)+(B)->A (A)=0BCHMOV P1,A ;(A)->P1 (P1)=0BCHEND(21H)= 3DH (R2)= 00H (A)= 0BCH (B)= 0D3H (2100H)= 0D3H13、 ORG 0LJMP START ;跳转到(PC)=0030H处ORG 30HSTART: MOV DPTR,#2000H ;#2000H->DPTR (DPTR)=2000HMOV A,#36H ;#36H->A (A)=36H第9页共57页MOV R0,#30H ;#30H->R0 (R0)=30HSETB C ;1->Cy (Cy)=1MOV @R0,A ;(A)->((R0)) (30H)=36HRLC A ;累加器A的内容带进位循环左移 (A)=6DHXCH A,@R0 ;累加器A的内容与20H单元的内容互换 (A)=36H (30H)=6DH PUSH ACC ;累加器A的内容入栈POP DPL ;堆栈内容弹出到DPL (DPL)=36HMOVX @DPTR,A ;(A)->(DPTR) (2036H)=36HDEC A ;(A)-1->A (A)=35HPUSH DPH ;DPH内容压栈POP B ;堆栈内容弹出到B (B)=20HADD A,B ;(A)+(B)->A (A)=55HMOV P1,A ;(A)->P1 (P1)=55HCLR A ;累加器A内容清零ADD A,B ;(A)+(B)->A (A)=20HEND(P1)= 55H (B)= 20H (30H)= 6DH (DPTR)= 2036H (R0)= 30H14、 ORG 0LJMP START ;跳转到(PC)=0030H处ORG 30HSTART: MOV SP,#60H ;#60H->SP (SP)=60HMOV R0,#20H ;#20H->R0 (R0)=20HMOV R2,#10H ;#10H->R2 (R2)=10HMOV A,#24H ;#24H->A (A)=24HLOOP: MOV @R0,A ;(A)->((R0))INC R0 ;(R0)+1->R0DJNZ R2,LOOP ;(R2)-1->R2 若R2内容不等于0则跳转到LOOP处SETB 01H ;1->位地址为01H的位 (20H.1)=1 (20H)=26HSETB C ;1->Cy (Cy)=1ADDC A,20H ;(A)+(20H)+(Cy)->A (A)=4BHSWAP A ;累加器A内容高低四位互换 (A)=0B4HPUSH ACC ;累加器A内容压栈POP DPH ;堆栈内容弹出到DPH (DPH)=0B4HPUSH ACC ;累加器A内容压栈第10页共57页POP B ;堆栈内容弹出到B (B)=0B4HMOV A,R2 ;(R2)->A (A)=00HMOV DPL,A ;(A)->DPL (DPL)=00HADD A,B ;(A)+(B)->A (A)=0B4HPUSH ACC ;累加器A内容压栈 (SP)=61HEND(A)= 0B4H (R0)= 30H (20H)= 26H (DPTR)= 0B400H (SP)= 61H15、 ORG 0LJMP START ;跳转到(PC)=0030H处ORG 30HSTART: MOV DPTR,#1100H ;#1100H->DPTR (DPTR)=1100HCLR A ;0->A (A)=00HMOV R1,#20H ;#20H->R1 (R1)=20HSETB C ;1->Cy (Cy)=1ADDC A,R1 ;(A)+(R1)+Cy->A (A)=21HMOV @R1,A ;(A)->((R1)) (20H)=21HINC A ;(A)+1->A (A)=22HINC A ;(A)+1->A (A)=23HPUSH ACC ;累加器A的内容压栈POP DPL ;堆栈内容弹出到DPL (DPL)=23HRR A ;累加器A的内容循环右移 (A)=91HMOV R0,A ;(A)->R0 (R0)=91HORL A,#24H ;(A) or #24H->A (A)=0B5HMOV P1,A ;(A)->P1 (P1)=0B5HSWAP A ;累加器A的内容高低四位交换 (A)=5BHMOV DPH,A ;(A)->DPH (DPH)=5BHMOV B,#02H ;#02H->B (B)=02HADD A,B ;(A)+(B)->A (A)=5DHCLR ACC.4 ;0->ACC.4 (A)=4DHSWAP A ;累加器A的内容高低四位交换 (A)=0D4HEND(A)= D4H (R0)= 91H (DPTR)= 5B23H (P1)= 0B5H (20H)= 21H第11页共57页16、 ORG 0LJMP START ;跳转到(PC)=0030H处ORG 30HSTART: MOV SP,#60H ;#60H->SP (SP)=60HMOV R3,#20H ;#20H->R3 (R3)=20HMOV A,#20H ;#20H->A (A)=20HMOV R0,#20H ;#20H->R0 (R0)=20HLOOP: MOV @R0,A ;(A)->((R0))INC R0 ;(R0)+1->R0DJNZ R3,LOOP ;(R3)-1->R3 若R3不等于零则跳转到LOOP处SETB 02H ;1->位地址02H位 (20H.2)=1 (20H)=24HSETB C ;1->Cy (Cy)=1SUBB A,20H ;(A)-(20H)-Cy->A (A)=0FBHMOV DPL,A ;(A)->DPL (DPL)=0FBHPUSH ACC ;累加器A的内容压栈MOV A,R3 ;(R3)->A (A)=00HMOV DPH,A ;(A)->DPH (DPH)=00HPOP ACC ;堆栈内容弹出到A (A)=0FBHMOVX @DPTR,A ;(A)->(DPTR) (00FBH)=0FBHANL A,#55H ;(A) and 55H->A (A)=51HPUSH ACC ;累加器A的内容压栈 (SP)=61HSWAP A ;累加器A内容高低4位交换 (A)=15HEND(A)= 15H (R3)= 00H (20H)= 24H (DPTR)= 00FBH (SP)= 61H17、O RG 0MOV R2,#8 ;#8->R2 (R2)=8HMOV R0,#30H ;#30H->R0 (R0)=30HCLR A ; #0->A (A)=0CPL A ; 累加器A的内容取反,(A)=0FFHLOOP: MOV @R0,A ; (A)-> (R0) (30H)~(37H)=0FFHINC R0 ; (R0)+1->R0DJNZ R2,LOOP ; (R2)-1 -> R2 , (R2)≠0则转移到LOOP处MOV B,R2 ; (R2) ->B (B)=(R2)=0INC B ; (B)+1 ->B (B)=1第12页共57页M OV A,R0 ; (R0) ->A (A)=(R0)=38HC LR C ; 0 -> Cy Cy=0ADDC A,B ; (A)+(B)+Cy -> A (A)=39HMOV R0,A ; (A) ->R0 (R0)=(A)=39HR LC A ; 累加器A的内容带进位左移,(A)=72HMOV DPTR,#1234H ; #1234H ->DPTR (DPTR)=1234HM OVX @DPTR,A ; (A) ->(DPTR) (1234H)=72HSWAP A ;累加器A的内容高低4位交换,(A)=27HPUSH ACC ; 累加器内容入栈POP DPH ; 堆栈内容弹出到DPH (DPH)=27HE ND(R0)= 39H (A)= 27H(33H)= 0FFH (DPTR)= 2734H (1234H)= 72H评分办法:指令注释占5分,对于程序段注释部分写对的学生可酌情给1-4分;程序段执行结果每空1分,共5分。
2013南航机电复试单片机试题回忆版

一.填空题:15题20个空,每空1分二.判断题:15题每题1分三.选择题:20题每题1分前三题均不难且注重基础四.简答题:10题,每题3分1.什么是堆栈?有哪些堆栈指令?2.访问片内RAM和片外RAM分别用什么寻址方式?3.PC是什么寄存器?是不是特殊功能寄存器?有什么作用?4.判断指令正确还是错误5.对P0口写入FFH表示哪个意思?(考察做输入口先写1)6.片外程序存储器和片外数据存储器共16位地址线和8位数据线,为什么不会发生冲突?五.程序阅读题:2题,每题5分(1)读一段程序(主要涉及堆栈的)<一>程序运行后DPTR的值(2分)<二>程序找哪些行错误,指出来,并说明原因(3分)(2)<一>读一段程序说明功能(2分)<二>写机器码六.编程题:5题,共40分1.在片内30H单元存有一数X(X从0到5),求6X2+5X+9,结果放入40H 单元(6分)2.将不同段的成绩放入RAM单元中(10分)3.P1的低四个口(P1.0,P1.1,P1.2,P1.3)LED灯,低电平点亮。
要求用延时0.1S,每隔1S闪烁一次,循环轮流。
(1)求初值(2分)(2)编写题目要求的程序(6分)4.串行口方式一以波特率4800bps输出(1)求定时器T1的初值(2分)(2)编写初始化程序(6分)5.(共8分)共阳极LED灯的控制:(1)求“4”,“3”,“6”的七段码(2)A 口、B口、C口分别控制三个LED显示,编写显示4.36的程序七.扩展(15分)线选法89C51的扩展(1)连线(9分)(2)求片外程序存储器,片外数据存储器的地址范围以及8255A各口的地址(6分)。
(完整版)单片机试题及其答案

一填空题1. A T89S51单片机芯片共有 40 个引脚,MCS-51系列单片机为 8 位单片机。
2. AT89S51单片机有 2 级优先级中断。
3. AT89S51内部数据存储器的地址范围是 00H-7FH ,位地址空间的字节地址范围是20H-2FH ,对应的位地址范围是 00H-7FH ,外部数据存储器的最大可扩展容量是64k字节。
4. 单片机也可称为微控制器或嵌入式控制器。
5.当MCS-51执行MOVC A,@A+PC指令时,伴随着 PSEN 控制信号有效。
6. 当单片机复位时PSW= 00 H,当前的工作寄存器区是0区,R4所对应的存储单元地址为 04 H。
7. MCS-51系列单片机指令系统的寻址方式有寄存器寻址、直接寻址、寄存器间接寻址、立即寻址、基址加变址、位寻址。
(相对寻址也可)8. 51系列单片机的典型芯片分别为AT89S51 、 8031 、 AT89C51 。
9. A T89S51的 p3 口为双功能口。
10. 由A T89S51组成的单片机系统在工作时EA引脚应该接地。
二选择题1.如果(A)=45H,(R1)=20H,(20H)=12H,执行XCHD A, @ R1;结果(A)=(A)A.42HB.20HC.12HD.15H2. AT89S51复位后,PC与SP的值为分别为(B)A.0000H、00HB.0000H、07HC.FFFFH、00HD.0000H、FFH3. 堆栈数据的进出原则是(B)A.先进先出 B.先进后出 C.后进后出 D.进入不出4. 已知:R0=28H (28H)=46H,顺序执行下面三条指令后MOV A,#32H; MOV A,45H ; MOV A,@R0执行结果A的内容为( A )A.46HB.28HC.45HD.32H5. AT89S51单片机中,唯一一个用户不能直接使用的寄存器是(C).A. PSWB.DPTR C . PC D. B三判断题1.AT89S51单片机可执行指令:MOV 35H,@R3。
单片机考试试题带答案(多套试题综合精简)

单片机考试试题带答案(多套试题综合精简)一、填空题(37分)1. AT89S51单片机芯片共有 40 个引脚,MCS-51系列单片机为8位单片机。
2. AT89S51的异步通信口为全双工(单工/半双工/全双工),3. AT89S51内部数据存储器的地址范围是00H-7FH,位地址空间的字节地址范围是20H-2FH,对应的位地址范围是00H-7FH,外部数据存储器的最大可扩展容量是64K字节。
4. 单片机也可称为微控制器或嵌入式控制器。
5.当MCS-51执行MOVC A,@A+PC指令时,伴随着 PSEN控制信号有效。
6. 当单片机复位时PSW=00 H,这时当前的工作寄存器区是 0区,R4所对应的存储单元地址为 04 H。
7. MCS-51系列单片机指令系统的寻址方式有寄存器寻址、直接寻址、寄存器间接寻址、立即寻址、基址加变址、位寻址。
(相对寻址也可)8. 51系列单片机的典型芯片分别为AT89S51 、8031 、AT89C51 。
9. AT89S51的 P3口为双功能口;10. 由AT89S51组成的单片机系统在工作时,EA引脚应该接地(或0);11. AT89S51外部程序存储器的最大可扩展容量是 64K ,其地址范围是0000H - FFFFH 。
ROM芯片2764的容量是 8 KB,若其首地址为 0000H,则其末地址 1FFFH 。
12. AT89S51的中断源有外中断0, T0 ,外中断1, T1,串行口,有 2个中断优先级。
13. AT89S51唯一的一条16位数据传送指令为MOV DPTR,data16。
14. LJMP的跳转范围是64K,AJMP的跳转范围是 2K B,SJMP的跳转范围是±128 B(或256B)。
15. 若A中的内容为68H,那么P标志位为1。
判断: 1.PC是一个不可寻址的特殊功能寄存器。
(√)2.在AT89S51单片机中,一个机器周期等于1μS。
51单片机复习题及答案

第1章单片机概述1.单片机与普通微型计算机的不同之处在于其将、、和3部分集成于一块芯片上。
答:CPU、存储器、I/O口。
2.8051与8751的区别是。
A.内部数据存储单元数目不同B.内部数据存储器的类型不同C.内部程序存储器的类型不同D.内部寄存器的数目不同答:C。
3.在家用电器中使用单片机应属于微计算机的。
A.辅助设计应用;B.测量、控制应用;C.数值计算应用;D.数据处理应用答:B。
4.微处理器、微计算机、微处理机、CPU、单片机它们之间有何区别?答:微处理器、微处理机和CPU都是中央处理器的不同称谓;而微计算机、单片机都是一个完整的计算机系统,单片机特指集成在一个芯片上的用于测控目的的单片微计算机。
5.MCS-51系列单片机的基本型芯片分别为哪几种?它们的差别是什么?答:MCS-51系列单片机的基本型芯片分别是8031、8051和8751。
它们的差别是在片内程序存储器上。
8031无片内程序存储器,8051片内有4KB的程序存储器ROM,而8751片内集成有4KB的程序存储器EPROM。
6.为什么不应当把51系列单片机称为MCS-51系列单片机?答:因为MCS-51系列单片机中的“MCS”是Intel公司生产的单片机的系列符号,而51系列单片机是指世界各个厂家生产的所有与8051的内核结构、指令系统兼容的单片机。
第2章 51单片机片内硬件结构1.在51单片机中,如果采用6MHz晶振,一个机器周期为。
答:2µs2.AT89C51单片机的机器周期等于个时钟振荡周期。
答:12。
3.若A中的内容为63H,那么,P标志位的值为。
答:P标志位的值为0。
4.内部RAM中,可作为工作寄存器区的单元地址为H~H。
答:00H;1FH。
5.通过堆栈操作实现子程序调用,首先要把的内容入栈,以进行断点保护。
调用返回时,再进行出栈保护,把保护的断点送回到。
答:PC;PC。
6.51单片机程序存储器的寻址范围是由程序计数器PC的位数所决定的,因为51单片机的PC 是16位的,因此其寻址的范围为KB。
单片机习题集(含答案)经典

单片机原理及应用习题第一章绪论1-1单项选择1、计算机中最常用的字符信息编码是()。
(A)ASCII (B)BCD码(C)余3码(D)循环码2、-31D的二进制补码为.( )。
(A)1110000B (B)11100001B (C)01100000B (D)01100001B3、十进制29的二进制表示为原码()。
(A)11100010B (B) 10101111B (C)00011101B (D)00001111B4、十进制0.625转换成二进制数是()。
(A)0.101 (B) 0.111 (C)0.110 (D)0.1005、十六进制数7的ASCII码是()。
(A) 37 (B) 7 (C) 07 (D) 476、十六进制数B的ASCII码是()。
(A) 38 (B) 42 (C) 11 (D) 10117、通常所说的主机是指()(A)运算器和控制器(B)CPU和磁盘存储器(C)CPU和主存储器(D)硬件和软件8、使用单片机实现在线控制的好处不包括( )(A)精确度高(B)速度快(C)成本低(D)能与数据处理结合1-2填空1、计算机中常作的码制有、和。
2、十进制29的二进制表示为。
3、十进制数-29的8位补码表示为。
4、是计算机与外部世界交换信息的载体。
5、十进制数-47用8位二进制补码表示为。
6、-49D的二进制补码为。
7、计算机中的数称为,它的实际值叫。
8、单片机的存储器结构形式有普林斯顿结构(又称冯.依诺曼结构)与哈佛结构,MCS-51存储器采用的是结构。
1-3 问答题1、何谓单片机?单片机与一般微型计算机相比,具有哪些特点?2、单片机主要应用在哪些领域?3、为什么80C51系列单片机能成为8位单片机应用主流?4、举例说明单片机的主要应用领域。
5、二进制数、十进制数、十六进制数各用什么字母尾缀作为标识符?无标识符时表示什么进制数?6、试比较MCS-51,MSP430,EM78,PIC,M6800及AVP等系列单片机的特点。
单片机习题集题库及答案

单片机习题及答案第一章1-1选择1.计算机中最常用的字符信息编码是( A )A ASCIIB BCD码C 余3码D 循环码2.要MCS-51系统中,若晶振频率屡8MHz,一个机器周期等于(A ) μsA 1.5B 3C 1D 0.53.MCS-51的时钟最高频率是( A ).A 12MHzB 6 MHzC 8 MHzD 10 MHz4.以下不是构成的控制器部件(D ):A 程序计数器、B指令寄存器、C指令译码器、D存储器5.以下不是构成单片机的部件(D )A 微处理器(CPU)、B存储器C接口适配器(I\O接口电路) D 打印机6.下列不是单片机总线是(D )A 地址总线B 控制总线C 数据总线D 输出总线7.-49D的二进制补码为.( B )A 11101111B 11101101C 0001000D 111011008.十进制29的二进制表示为原码(C )A 11100010B 10101111C 00011101D 000011119. 十进制0.625转换成二进制数是( A )A 0.101B 0.111C 0.110D 0.10010 选出不是计算机中常作的码制是( D )A 原码B 反码C补码 D ASCII1-2填空1.计算机中常作的码制有原码、反码和补码2.十进制29的二进制表示为000111013.十进制数-29的8位补码表示为.111000114.单片微型机CPU、存储器和I\O接口三部分组成.5.若不使用MCS-51片内存器引脚EA必须接地.6.输入输出设备是计算机与外部世界交换信息的载体.7.十进制数-47用8位二进制补码表示为.110100018.-49D的二进制补码为.111011019.计算机中最常用的字符信息编码是ASCII10.计算机中的数称为机器数,它的实际值叫真值。
1-3判断1.我们所说的计算机实质上是计算机的硬件系统与软件系统的总称。
(√)2.MCS-51上电复位时,SBUF=00H。
单片机原理及应用试题含参考答案

单片机原理及应用试题含参考答案一、单选题(共54题,每题1分,共54分)1.用8051的定时器T1作定时方式,用模式1,则工作方式控制字为A、05HB、50HC、01HD、10H正确答案:D2.用8051的定时器,若用软启动,应使TOMD中的A、GATE位置1B、C/T位置1C、GATE位置0D、C/T位置0正确答案:C3.4K程序存储器常用的芯片是EPROM是():A、2716B、2732C、2764D、27128E、27256F、27512正确答案:B4.已知(A)=59H,(SP)=32H,(32H)=6CH,执行指令POPACC后SP的内容为():A、59HB、32HC、6CHD、31H正确答案:D5.执行中断处理程序最后一句指令RETI后,A、程序返回到ACALL的下一句B、程序返回到LCALL的下一句C、程序返回到主程序开始处D、程序返回到响应中断时一句的下一句正确答案:D6.8051单片机的定时器T1用作定时方式时是A、由内部时钟频率定时,一个机器周期加1B、由外部时钟频率定时,一个时钟周期加1C、由内部时钟频率定时,一个时钟周期加1D、由外部时钟频率定时,一个机器周期加1正确答案:A7.型号为2764的EPROM容量是():A、2KBB、4KBC、8KBD、16KB正确答案:C8.已知(A)=7FH,(PSW)=00H,当执行RRCA指令后A的内容为():A、FEHB、FFHC、3FHD、BFH正确答案:C9.MOVC,bit是()A、数据传送指令B、算术运算指令C、逻辑运算指令D、控制转移指令E、位操作指令正确答案:E10.A7H和5BH两个立即数相加后,和为(),(CY)是()。
A、1CH,0B、C1H,0C、02H,1D、C1H,1正确答案:C11.DJNZdirect,rel是()A、数据传送指令B、算术运算指令C、逻辑运算指令D、控制转移指令E、位操作指令正确答案:D12.执行程序:MOVDPTR,#8000HMOVXA,@DPTRADDA,20HMOVR0,#00HMOVx@R0,AINCR0CLRAADDCA,#00HMOVx@R0,ARET之后则CY 是()A、0B、1C、-1D、2正确答案:A13.MCS-51指令系统中,指令ADDA,R0执行前(A)=86H,(R0)=7AH,(C)=0执行后,其结果为()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
填空题20分,选择20分,判断15分,问答30分,读程序10分,编程题40分,连接线路15分
十进制数转换成十六进制、BCD码。
计算机为什么要采用总线结构,总线结构有什么优点?
8088/8086有什么区别?
ALE数据允许锁存INTR ?
物理地址与逻辑地址之间的转换?
IP指令指针寄存器、CS、Reset复位后CPU从何处开始执行?
I/O接口编址方法?
NMI的中断类型码?
根据中断类型算中断入口地址。
I/O接口的功能?
并行通讯与串行通信?
串行异步、同步通讯的编码方式?
中断嵌套问题?
三个编程题:有一个是教材上的例题,其他两个记不起来了。
其他:
一个8259初始化,根据图求8259的物理地址以及将8259初始化。
一个8255初始化.
一个存储器扩展(作图题),包括位扩展和存储单元扩展、将存储器内容清零。
zz
1. 端口与接口的定义,二进制十进制十六进制BCD码ASCII码的相互转化,指令格式的判断,特殊寄存器在片内RAM中的地址,数据总线口语地址总线口的结构区别,中断入口地址,ALE信号,A/D概念
2. 多机通信原理,按照范围单片机传递的信息可分为哪几类
3. 程序阅读:BCD码的减法,关于堆栈的
4. 编程:判断X的值再根据其值对Y进行赋值,成绩分段统计,定时器/计数器的简单编程,LED等接线与编程
5. 接口:考的8255A,状态字或命令字都不会告诉格式
1.对于一个X 对于不同范围去不同的函数Y=f(X) 有求加倍减半绝对值
2对于30个同学的成绩压缩为BCD码统计不同分数段的人数
3LED灯中断编程控制亮灭
4 8255的A,B,C口的地址与编程
5 定时器计数器方式二工作
下面说说填空选择判断知识点:
1,DPTR是什么寄存器,
2.复位后sp指向哪里
3.P0P1P2P3可以用做什么
4,。
中断怎么实现,只要是sp的作用
5.波特率计算
6,TMOD,TCON,各位作用
7.PSW各位作用。
8.怎么清零置一
9.8255方式字
10.定时器计数器工作方式及特点
11.DA,AD是神马
12.EA的作用
13。
ALE的作用。
锁存
14。
40个各个引脚都要记得
15。
00H-----2FH的作用,怎么选择0区工作寄存器
16。
怎么使单片机复位
17。
机器周期,指令周期计算
18。
延时程序编写
19。
51内部的RAM,ROM
问答题:1,地址数据控制总线怎么区分
2. 串行通信,全双工办双工区别
3 dptr和pc区别
4 怎么区别OE WE 信号
5 传输数据校验方法
6 中断嵌套问题神马的
7 ,8,9,10 。
忘记了
编程题都记得:1,判断正负数还有奇数偶数置零,1,-1 2,20个数找大小
3,传输数据编程
4定时器计数器编程,方式一
5。
LED灯段代码,8255输入输出
联接线路:RAM,EPROM扩展并且简单编程。
读程序实在想不起来了,不难。