1、单片机习题读程序汇编单片机习题-读程序单片机习题和试题库读程序1.写出下列指令执行的结果(1).MOV A,#20HMOV R0,#20HMOV R0,AANL A, #0FHORL A, #80HXRL A, R0A=_ ; R0= ; (20H)=_(2).MOV DPTR, #2314HMOV R0, DPHMOV 14H, #22HMOV R1, DPLMOV 23H, #56HMOV A, R0XCH A, DPH执行以上指令后A=_ DPTR=_(3).MOV A,#50HMOV B,#77HPUSH ACCPUSH BPOP ACCPOP B执行完本段指令后(A)=_ (B)=_
2、2.设内部RAM中59H单元的内容为50H,写出当执行下列程序段后寄存器A,R0和内部RAM中50H,51H单元的内容为何值?MOV A, 59HMOV R0, AMOV A, #00HMOV R0, AMOV A, #25HMOV 51H, AMOV 52H, #70H3.已知(A)=83H,(R0)=17H,(17H)=34H。请写出执行完下列程序段后A的内容。ANL A,#17HORL 17H, AXRL A, R0CPL A4. 试分析下列程序段,当程序执行后,位地址00H,01H中的内容为何值?P1口的8条I/0线为何状态?CLR CMOV A,#66HJC LOOP1CPL CSE
3、TB 01HLOOP1:ORL C,ACC.0JB ACC.2,LOOP2CLR 00HLOOP2:MOV P1,A5.若A=11H,R0=33H,B=55H,(11H)=22H,(22H)=66H,(33H)=44H,在注释区写出分别执行下列指令后果的结果。(1)MOV R1,A ;(2)MOV R3,#11H ;(3)MOV R0,#22H ;(4)MOV A, R0 ;(5)MOV B,33H ;(6)MOV 40H,R0 ;6.若A=78H,R0=34H,(34H)=DCH,(56H)=ABH,Cy=1,求分别执行下列指令后(34H)和(56H)中的数据。(1)ADDC A,R0 ;(
4、2)SUBB A,56H ;(3)DEC R0 ;(4)INC 56H ;7若A=B7H,R0=5EH,(23H)=A1H,Cy=0,将分别执行下列指令的结果写在注释区。(1)ANL A,R0 ;(2)ORL A,#23H ;(3)XRL 23H,A ;(4)RLC A ; ;10试求下列程序依次运行后有关单元中的内容。MOV 20H,#A7H ;MOV C,07H ;ORL C,/H ;CPL 00H ;SETB 03H ;MOV A,20H ;RLC A ;MOV 20H,A ;11已知:(60H)23H,(61H)61H,以下程序段执行后(62H) 。CLR CMOV A,9AHSUBB
5、 A,60HADD A,61HDA AMOV 62H,A12已知:(A)02H,(SP)40H,(41H)FFH,(42H)FFH,以下程序段执行后(A) .(SP) .(41H) .(42H) .(PC) 。POP DPHPOP DPLMOV DPTR,3000HRR AMOV B,AMOVC A,ADPTRPUSH ACCMOV A,BINC AMOVC A,ADPTRPUSH ACCRETORG 3000HDB 10H,80H,30H,50H,30H, 50H13以下程序段执行后(A)= ,(30H) 。MOV 30H,0A4HMOV A,0D0HMOV R0,30HMOV R2,5EH
6、ANL A,R2ORL A,R0SWAP ACPL AXRL A,0FEHORL 30H,A14已知(59H)50H,以下程序段执行后(A)= ,(50H) ,(51H) ,(R0) 。MOV A,59HMOV R0,AMOV A,00MOV R0,AMOV A,25HMOV 51H,AMOV 52H,70H16.若(R1)=30H,(A)=40H,(30H)=60H,(40H)=08H。试分析执行下列程序段后上述各单元内容的变化。 MOV A,R1 MOV R1,40H MOV 40H,A MOV R1,#7FH17.若(A)=E8H,(R0)=40H,(R1)=20H,(R4)=3AH,(
7、40H)=2CH,(20)=0FH,试写出下列各指令独立执行后有关寄存器和存储单元的内容?若该指令影响标志位,试指出CY. AC.和OV的值。 (1)MOV A,R0 (2)ANL 40H,#0FH (3)ADD A,R4 (4)SWAP A (5)DEC R1 (6)XCHD A,R120.改正下列指令MOV R3,A MOV DPTR,A INC R3 IDEC DPTR ADDC #30H,A 21.若(10H)=0FFH,(11H)=00H,(12H)=0FFH,(13H)=00H,写出每一步指令运行结果MOV A,10H(A)= ,ANL A,#01H(A)= ,MOV A,11H(
8、A)= ,ORL A,#01H(A)= ,MOV A,12H(A)= ,XRL A,#01H(A)= ,MOV A,13H(A)= ,XRL A,#0AA(A)= ,(10H)= , (11H)= , (12H)= , (13H)=22.MOV 30H,#60H MOV R0,#60H MOV A,30H MOV B,A MOV R0,B (A)= ,(0)= ,()= ,23MOV SP,#60H MOV A,#01H(A)= , MOV B,#02H()= , PUSH A()= , PUSH B()= , POP A POP B()= ,24改正下列指令MOV A,DPTRMOV DPT
9、R,10HMOV DPTR,40HMOVX 40H,#30HADD 20H,#10H25.设内部RAM(30H)=5AH,(5AH)=40H,(40H)=00H,端口P1=7FH,问执行下列指令后,各有关存储单元(即R0,R1,A,B,P1,30H,40H及5AH单元)的内容如何?(8分) MOV R0,#30H ;R0=30H MOV A,R0 ;A=5AH MOV R1,A ;R1=5AH MOV B,R1 ;B=5AH MOV R1,P1 ;(5AH)=7FH MOV A,P1 ;A=7FH MOV 40H,#20H ;(40H)=20H MOV 30H,40H ;(30H)=20H26
10、.位地址为M.N.Y,程序如下:MOV, ;() ANL C, ;(M) MOV Y,C ;(Y)=(M)MOV C,M ;(M) C ANL C,N ;(M)ORL CY ;MOV Y,C 求程序功能表达式:27.阅读下列程序并回答问题CLR CMOV A,#9AH SUBB A,60H ADD A,61H, DA A MOV 62H,A请问该程序执行何种操作?28.已知初值:(60H)=23H,(61H)=61H,请问运行程序后:(62H)=( )?(1).程序如下2506H M5: MOV SP,#58H; 2509MOV 10H,0FH; 250CH MOV 11H,#0BH; 250
11、FH ACALL XHD; 2511H MOV 20H,11H 2514H M5A: SJMP M5A XHD: PUSH 10H PUSH 11H POP 10H POP 11H RET问:()执行后堆栈内容?()执行:后,()?()?29.解读下列程序,然后填写有关寄存器内容(1) MOV R1,#48H MOV 48H,#51H CJNE R1,#51H,00H JNC NEXT1 MOV A,#0FFH SJMP NEXT2 NEXT: MOV A,#0AAH NEXT2: SJMP NEXT2 累加器 A=( )(2) MOV A,#0FBH MOV PSW,#10H ADD A,#7FH若,当执行完上述程序段后,将各位状态填入下表:30.(R0)=4BH,(A)=84H,片内RAM(4BH)=7FH,(4BH)=20H MOV A,R0 ;7FHA MOV R0,40,40H ;20H4BH MOV 40H,A ;7FH40H MOV R0,#35H问执行和程序后,R0.A和4BH.40H单元内容的变化如何?