習(xí)題(指令與編程及答案)匯總_第1頁
習(xí)題(指令與編程及答案)匯總_第2頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、12.下列指令中可能改變Cy的有()1. ORG 0003HLJMP 2000HORG 000BHLJMP 3000H2. 當(dāng) CPU 響應(yīng)外部中斷 0 后,PC 的值是()A.0003HB. 2000HC. 000BHD. 3000H3. MCS-51 的相對(duì)轉(zhuǎn)移指令的最大負(fù)跳距離為()。A.2KBB. 128BC.127BD.256B4. 以下運(yùn)算中對(duì)溢出標(biāo)志 0V 沒有影響或不受影響的運(yùn)算是(A.邏輯運(yùn)算B.符號(hào)數(shù)加減運(yùn)算C.比較數(shù)據(jù)大小運(yùn)算D .5.產(chǎn)生PSEN信號(hào)的指令是()A.MOVXA , DPTRB. MOVXDPTR, AC. MOVCA , A+PCD. MOVXA, A+

2、DPTR6. MOVX A , DPTR 指令中的源操作數(shù)的尋址方式是(A.寄存器尋址B.寄存器間接尋址 C.直接尋址D.立即尋址9. 6264 芯片是10.下面那條指令產(chǎn)生WR言號(hào)單項(xiàng)選擇題)除法運(yùn)算7.將 MCS-51 的工作寄存器置成3 區(qū)的指令是(A. MOV PSW , #13HB.MOV PSW ,#18HC. SETB PSW.4 ,CLR PSW.3D.SETB PSW.3 ,CLRPSW.48.指令的跳轉(zhuǎn)范圍是(A .256BB.1KBC.2KBD.64KB2A.E PROMB.RAMC .FlashROM D .EPROMA.MOVX A , DPTRB.MOVCA , A

3、+DPTRC.MOVC A , A+PCD.MOVXDPTR , A11.執(zhí)行 LCALL4000H 指令時(shí),MCS-51所完成的操作是(A.保護(hù)PCB.保護(hù)現(xiàn)場(chǎng)C.4000H 一 PCD.PC+3 入棧,4000H PC13假定設(shè)置堆棧指針 SP 的值為 36H,在執(zhí)行指令 PUSH 20H 后,15. MOV C, 00H 指令的第二操作數(shù)尋址方式是(21.已知(31H ) =21H,( 32H) =04H,執(zhí)行下列指令后,31H 的內(nèi)容為(PUSH31HPUSH32HPOP31HPOP32HA. ORL PO, #0FHB. ORLP0,#0F0HC. ANL P0,#0F0HD. AN

4、LP0,#0FH18ORG0000HAJMP0040HORG0040HMOVSP,#00H當(dāng)執(zhí)行完上面的程序后,PC 的值是 ()A.0040H.0041HC.0042HD. 0043H17.把 P0 口高四位變 0,低四位不變,應(yīng)使用指令19.在相對(duì)尋址方式中,“相對(duì)”兩字是指跳轉(zhuǎn)(A.INC AB.CPL AC. RLC AD.MOV A , #dataSP 的值為(A.36HB.37HC. 38HD.21H14.PUSHACC 指令,MCS-51 完成的操作是(A. ( SP)+ 1 SP (ACC) (SP)B. (ACC)(SP) (SP)-1SPC.( SP) -1 SP (ACC

5、) (SP)D. (ACC)(SP) (SP)+1SPA.位尋址 B.直接尋址C.立即尋址D. 寄存器16.在算術(shù)運(yùn)算中,與輔助進(jìn)位AC 有關(guān)的是(A.二進(jìn)制 B.八進(jìn)制C.十進(jìn)制D.卜六進(jìn)A.地址偏移B.當(dāng)前指令的首地址C.當(dāng)前指令的末地址D. DPTR 值20.使用 8051,且EA=1, 則可以外擴(kuò) ROM (A. 64KBB. 60KBC. 58KBD. 56KBA.21HB. 04HC. 32HD. 31H22.已知(A) =00H,執(zhí)行 DECA 指令后,A 的內(nèi)容為()A 00HB. FFHC. 01H D. 0FH23. 要用傳送指令訪問 MCS-51 片外 RAM ,它的指令

6、操作碼助記符應(yīng)是()。A. MOVB. MOVX C. MOVCD. 以上都行24. LCALL 存于 2000H 開始的地址單元中,執(zhí)行完相應(yīng)子程序中的返回指令, PC=( )。B. 2001H C. 2002HD. 2003H25. 程序設(shè)計(jì)的方法一般有()B. 2 種C. 3 種D. 4 種26. 在寄存器間接尋址方式中,指定寄存器中存放的是()A. 操作數(shù) B. 操作數(shù)地址 C. 轉(zhuǎn)移指令 D. 地址偏移量27. 當(dāng) 8031 外擴(kuò)程序存儲(chǔ)器 8KB 時(shí),常使用 EPROM2716 ()A. 2 片B. 3 片C. 4 片D. 5 片28. 中斷服務(wù)程序的最后一條指令必須是()A. E

7、NDB. RETC. RETID. AJMP29. ADC0809 啟動(dòng) A/D 轉(zhuǎn)換的方式是()A. 高電平B. 低電平C. 正脈沖D. 負(fù)脈沖30. MOV C, 30H 源操作數(shù)尋址方式為()A. 立即尋址B. 寄存器尋址C. 寄存器間接尋址D. 位尋址31. POP A 指令, MCS-51 完成的操作是()A. A(SP)SPJ(SP)-1B. SP(SP)-1A(SP)C. A (SP)SP (SP)+1 D. SP (SP)+1 A(SP)32. 當(dāng)( RS1, RS0) =( 1, 1)時(shí),工作寄存器 R0 對(duì)應(yīng)內(nèi)部 RAM 的( ) 字節(jié)單元。A. 00HB. 08HC. 1

8、0HD. 18H33. 在 R3 初值為 OOH 的情況下,DJNZ R3 , rel 指令將循環(huán)執(zhí)行()A. 0 次B. 256 次C. 128 次D. 10 次34. 執(zhí)行 AJMP addr11 指令時(shí), MCS-51 完成的操作是()A2000HA.保護(hù) PCB. PCaddrllC.保護(hù)現(xiàn)場(chǎng)D. PC+2 入棧 PCoio addrll35.ORG 2000HLCALL 3000HORG 3000HRET上面程序執(zhí)行完 RET 指令后,( PC)=()。A. 2000HB. 3000HC. 2003HD. 3003H36. MCS-5i 執(zhí)行完MOV A,#08H 后, PSW 的(

9、)位被置位。A. CB.F0C. 0VD. P37. MCS-5i 的并行I/O 口信息有兩種讀取方法,一種是讀引腳,還有一種是()A. 讀鎖存器B. 讀數(shù)據(jù)C. 讀 A 累加器D. 讀 CPU38. 對(duì)程序存儲(chǔ)器的讀操作,只能使用( )。A. MOV 指令B. PUSH 指令C. MOVX 指令D. MOVC 指令39 ORG 8000HDS08HDB30H , 8AH則 8008H 單元內(nèi)容為()。A. 08HB. 30HC. 8AHD.不確定40. MOVR0, A 指令目標(biāo)操作數(shù)的尋址方式是()。A. 寄存器間接尋址B. 寄存器尋址C. 直接尋址D.相對(duì)尋址4i. 已知( 60H )=

10、23H, (6iH)=6iH ,運(yùn)行下列程序62H 內(nèi)容為( )。CLRCMOVA , #9AHSUBBA , 60HADDA, 6iHDAAMOV62H , AA. 38HB. D8HC. DBHD.3EH42. 設(shè)系統(tǒng)的晶振頻率為 6MHZ ,下列子程序 DELAY 的延時(shí)時(shí)間約為()。DELAY :MOV R2, #0FAHL2 :DJNZRETR2, L2A.900 pSB. 1006 必C. 500usD. 5.501us43. MCS-51 的 LJMP 指令跳轉(zhuǎn)空間為()。A. 2KB. -28127C. 64KD. 32K44. 關(guān)于 MCS-51 的堆棧操作,正確的說法是()

11、。A.先入棧,再修改棧指針B.先修改棧指針,再出棧C.先修改棧指針,再入棧D.以上都不對(duì)45. JNZ rel 指令的尋址方式是()。A.立即尋址B.寄存器尋址C.相對(duì)尋址D.位尋址46.8051 執(zhí)行 ADD A,20H 指令時(shí),首先在 P0 口上出現(xiàn)的信息是()。A.操作碼地址B.操作碼C.操作數(shù)D.操作數(shù)地址47. 必須進(jìn)行十進(jìn)制調(diào)整的十進(jìn)制運(yùn)算()。A.有加法和減法B.有乘法和除法C.只有加法D.只有減法48. 執(zhí)行 MOVX DPTR, A 指令時(shí),MCS-51 產(chǎn)生()控制信號(hào)。A.PSENB.WRC. ALED.RD49. 已知單片機(jī)系統(tǒng)的 fosc=6MHZ,執(zhí)行下列延時(shí)程序的

12、時(shí)間為()。2.設(shè) DPTR=(2000)H,( A)=08H,貝 U MOVC A, A+DPTR 的操作數(shù)的實(shí)際地址3.假定 addrll=OO1OOOOOOOOB,標(biāo)號(hào) JAZ 的地址為 1030H,執(zhí)行指令 JAZ: AJMP addrll 后,程序轉(zhuǎn)移地址_ 去執(zhí)行。4.JZ rel 的操作碼的地址為 1000H , rel=20H ,他的轉(zhuǎn)移目標(biāo)地址為 _。28.執(zhí)行當(dāng)前指令后, PC 內(nèi)容為_。DY2 :MOVR6,#2DLP1 :MOVR7,#250DLP2 :DJNZR7,DLP2DJNZR6,DLP1RETA . 1msB. 1.5msC. 2ms填空題(每小題 1分,共1

13、5 分D. 4ms5.在寄存器間接尋址方式中,其“間接”體現(xiàn)在指令寄存器的內(nèi)容不是操作數(shù),而是操作數(shù)的_ 。6假定(A)=OFFH,執(zhí)行指令 INC A 后,A 的內(nèi)容為_。7.MCS-51 系統(tǒng)中,當(dāng)PSEN信號(hào)有意義時(shí),表示 CPU 要從_ 存儲(chǔ)器讀取信息。8.訪問 MCS-51 程序存儲(chǔ)器傳送指令的操作碼助記符應(yīng)為 _。9.累加器(A)=7EH,( 20H)=#04H,MCS-51 執(zhí)行完 ADD A,20H 指令后,PSW.O 為10. INC 指令_ CY 位。11. 假定累加器 A 的內(nèi)容為 30H,執(zhí)行指令 1000H : MOVC A,A+PC 后,把程序存儲(chǔ)器_單元的內(nèi)容送累

14、加器 A 中。12. 在 R7 初值為 00H 的情況下,DJNZ R7,rel 指令將循環(huán)執(zhí)行 _ 次。13. MOV PSW, #10H 是將 MCS-51 的工作寄存器置為第 _ 組。14. 指令 LCALL 37B0H,首地址在 2000H,完成此操作后(PC)=_ 。15.假定 DPTR 的內(nèi)容為 8100H,累加器 A 的內(nèi)容為 4DH,執(zhí)行指令 MOVC A,A+DPTR 后,送入 A 的是程序存儲(chǔ)器_單元的內(nèi)容。16. 累加器 A 中存放一個(gè)其值小于或等于127 的 8 位無符號(hào)數(shù),CY 清“ 0”后執(zhí)行 RLC A指令,則 A 中數(shù)變?yōu)樵瓉淼腳倍。17. MCS-51 的兩條

15、查表指令是_。18. 指令 DJNZ R7, rel 的指令操作碼所在的地址為3000H,rel=EFH,則它的轉(zhuǎn)移目的地址為_ 。19. 通過堆棧操作實(shí)現(xiàn)子程序調(diào)用,首先要把 _ 的內(nèi)容入棧,以進(jìn)行斷點(diǎn)保護(hù)。20. 調(diào)用返回時(shí)再進(jìn)行出棧操作,把保護(hù)的斷點(diǎn)彈回 _。21. 設(shè)(SP)=60H,( ACC)=30H,( B)=70H,執(zhí)行指令 PUSH ACC,PUSH B 后,SP的內(nèi)容為289318805 單片機(jī)原理及接口技術(shù)第 3 頁共 9 頁22. 設(shè)(SP)=60H,( ACC)=40H,( B)=60H,執(zhí)行 PUSH ACC, PUSH B 后 61H單元的內(nèi)容為_。23.設(shè)(SP

16、)=60H,( ACC)=40H,( B)=80H,執(zhí)行 PUSH ACC,PUSH B,62H 單元的內(nèi)容為_。24. PC 中存放的是_。25. ORL A, #OFOH 是將 A 的高 4 位置 1,而低 4 位_。26. 一臺(tái)計(jì)算機(jī)的指令系統(tǒng)就是它所執(zhí)行的 _ 集合。27. 累加器(A)=80H,執(zhí)行完指令 ADD A,#83H 后,進(jìn)位位 C=_28. 以助記符表示的計(jì)算機(jī)指令就是它的 _ 語言。29. SJMP rel 的指令操作碼地址為 0050H,rel=65H,那么它的轉(zhuǎn)移目的地址為30._ 執(zhí)行如下指令序列后, 所實(shí)現(xiàn)的邏輯運(yùn)算式為 _MOVC, P1.0ANLC,P1.1

17、ANLC, /P1.2MOVP3.0,C31._當(dāng) MCS-51 引腳 ALE 信號(hào)有效時(shí),表示從 P0 口穩(wěn)定地送出了 _ 地址。三、讀程序回答1.試求下列程序依次運(yùn)行后有關(guān)單元的內(nèi)容。已知(R0)=24H,( Cy)=1, (1FH)=59H,(20H)=24H, (24H)=B6H。(6 分)MOV A, 1FH;(A)=ADDC A, 20H:20H 的尋址方式是CLR A;(A)=ORL A, R0:R0 的尋址方式是:(A)=CPL A:(A)=答案:59H、直接尋址、00H、寄存器間接尋址、B6H、49HSECH: MOV DPTR, #2000HMOV R2, #0FHMOVX

18、A, DPTRMOV B, ASLOP : INC DPTRMOVX A, DPTRCJNE A, B, SLP1SLP1:JNC SLP2MOV B, ASLP2:DJNZ R2, SLOPMOV R2, BRET問:(1 )此程序完成的是將從 _H 單元開始的 _H 個(gè)數(shù)中的最 _ 值找出,放在單元中。(2) B 寄存器里暫存最_ 值。(3) 若要比較 100 個(gè)數(shù),則哪句程序需要修改?( 10 分)答案:(1)2000H、10H、小、R2(2)?。?)將第二句 MOV R2, #0FH 改為 MOV R2, #992.ORG 6000H;TAB : DB 45H,10,88H, 5;DW

19、 12H,56H,7800H;ORG 8000HMOV DPTR,#6001HCLR AMOVC A,A+DPTRMOV DPTR, #6005HMOVX DPTR, A問:(1 )根據(jù)行指令內(nèi)容,畫出存儲(chǔ)器從6000H-6009H 中數(shù)據(jù)分布圖。(2) 執(zhí)行上面的程序,完成了什么功能?(3)最后 A 的內(nèi)容為多少?(10 分)6000H6001H6009H(1)(2)將從 ROM 單元地址為 6001H 的內(nèi)容傳送到片外數(shù)據(jù) RAM6005H 單元中。(3)(A ) =0AH3.已知某二進(jìn)制數(shù)(10H)存在內(nèi)部 RAM50H 單元中,閱讀下列程序,說明其功能。(6 分)MOV RO, #50

20、H ;( RO) =_MOV A, R0H ;( A) = _,尋址方式是 _。CLR CRLC A;( A) =_ADD A, R1 ;尋址方式是_INC R0MOV R0, A ;R0 的地址是 _答案:50H,10H,寄存器間接尋址,20H,寄存器尋址,51H4. START:MOVR0, #30HMOVR7,#0FHMOVDPTR, #3000HLOOP:MOVA, R0MOVXDPTR, AINCR0INCDPTRDJNZR7, LOOPRET6000H6001H6009H1) 程序完成的什么功能?( 2 )R7 的作用是什么?( 3 )RET 指令完成什么功能?(10 分)答案:(

21、 1 )程序?qū)⑵瑑?nèi)RAM 中 3OH3FH 單元的內(nèi)容傳送到片外RAM 地址為3OOOH 3OOFH 中(2)R7 是計(jì)數(shù)器,初值表示傳送數(shù)據(jù)個(gè)數(shù),傳送1 個(gè)減 1,當(dāng) (R7)=0 時(shí),表示傳送完。(3)返回到主程序的斷點(diǎn)處。5. ORG 2000HTAB1: DB 10H,22,ATAB2: DW 10H , 2100HORG 3000HMOV DPTR ,#TAB2MOV A, #2MOVC A , A+DPTR問:( 1)ROM2000H 單元中的內(nèi)容 _ 。(2) 字符 A 所在單元的地址為 _。(3) 2005H 單元中的內(nèi)容為 _ 。(4)_執(zhí)行程序后, DPTR 的內(nèi)容為 。(

22、5) A 的內(nèi)容為 _。( 1O 分)答案 :( 1 ) 1OH( 2) 2OO2H( 3 ) 21H( 4) 2OO3H( 5 ) 21H6.若(A)=FFH , (RO)=OOH , ( OOH ) =FFH , ( CY ) =0,位地址(OOH) =1,將結(jié)果填入橫線。( 6 分)DECA;(A)=_INCRO; 此句將地址為_H 的單元加 1SETBOOH; 此句完成 _功能ANL C, OOH ;(C)=_ADD A, RO ;尋址方式=_, (A)=_答案:FEH , OOH,位地址為 OOH 的單元置 1。0,寄存器尋址,F(xiàn)EH7.START: MOV A, 4OHMOV DP

23、TR, #TABMOVC A, A+DPTRMOV 4OH, ARETTAB DB 3OH, 31H, 32H, 33H, 34HDB 35H, 36H, 37H, 38H, 39H假設(shè) 4OH 單元中的數(shù)的范圍從 O 9,問:(1)這段程序完成什么功能?(2) 當(dāng)執(zhí)行程序前 4OH 中的內(nèi)容為 6,問執(zhí)行完這段程序后 4OH 中的內(nèi)容為 _(3) MOVC A,A+DPTR 中的尋址方式是 _ 。( 1O 分)答案:(1)這段程序完成了通過查表得到4OH 單元的數(shù)的 ASCII 碼,并將結(jié)果返回單元。(2)36H(3)基址+變址的尋址方式8. ADD3:MOVA, R5ADDA, R2MOV

24、RO , AINCROMOVA, R6ADDCA, R3MOVRO, AINCROMOVA, R7ADDCA, R4MOV RO, A4OHRET(1)程序完成什么功能?(2) 假設(shè)執(zhí)行程序前 R0=30H ,程序執(zhí)行結(jié)束后 30H , 31H , 32H 中的內(nèi)容為 _其中_ H 中存放高字節(jié)(3) 執(zhí)行結(jié)束后, CY 的內(nèi)容為 _。( 10 分)答案:程序完成了兩個(gè) 3 字節(jié)數(shù)的求和。力口數(shù)(1)在 R7R6R5中,力口數(shù)(2 )在 R4R3R22三個(gè)字節(jié)中和,32H。3三字節(jié)和最高位的進(jìn)位位。(30H) =E0H,(CY)=1,根據(jù)程序填空。(6 分);(A)=答案:A5HB5H,直接尋

25、址6BH60H10. ADDIO:MOVR0,30HMOVR7,#9MOVA, R0LOOP:INCR0ADDA, R0DJNZR7,LOOIMOV30H, ARET程序完成的是什么功能?(1)立即數(shù)尋址9.設(shè)(A) =5AH,( R1) =30H,SWAPADDA, #30H;尋址方式ADDCA, 30H;(A)=,尋址方式RLC;(A)=ANLA, 30H;(A)=(2)若把 MOV R7,#9 改成MOV R7,#4,程序功能有何變化? (10 分)答案:(1)將片內(nèi) RAM 從 30H 39H 十個(gè)單元中的內(nèi)容相加,和存在 30H 中。(2)不是 10 個(gè)數(shù)相加,是 30 34H 五個(gè)

26、數(shù)相加。(2)程序結(jié)束后 51H 單元中存放的內(nèi)容是什么(3)若將 JNZ LP1 這句變成 JZ LP1,程序完成什么功能?(10 分) 答案:(1)數(shù)據(jù)單元指針。(2) 片內(nèi) RAM30H 50H 單元中內(nèi)容為 FFH 單元的個(gè)數(shù)。(3) 將片內(nèi) RAM30H 50H 單元中內(nèi)容為非 FFH 單元的總個(gè)數(shù)送給 51H。12.設(shè)內(nèi) RAM (20H)=11001011B,(24H)=01010111B,求依次執(zhí)行下列指令后的結(jié)果。(6 分)LOOP : JB 00H, LP1 ;JB 26H, LP2 ;程序跳轉(zhuǎn)到 LP1 還是 LP2 ?答Lp1:MOVA,20H ;(A)=,尋址方式是C

27、PL A(A)=ADD A, 24H(A)=JZ LP3 ;執(zhí)行完此句后,程序跳到LP3 還是 LP2 處?LP2:INC 20HLP3:答案:Lp111001011B,直接尋址00110100BLOOK : MOV51H,#0MOVR0, #30HMOVR1, #20HLOP :MOVA,R0CPLAJNZLP1INC51HLP1:INCR0DJNZR1, LOPRET11.(1) R0 的作用是什么?13.ORG 2000H問:(1)請(qǐng)?zhí)钊氪鎯?chǔ)器 2000H2008H 單元的內(nèi)容。(2)執(zhí)行完程序后 A 中的內(nèi)容為 _2000H02H00H03H00H04H00H00H00H1000101

28、1BLp2DB01,02DW03, 04DS03HORG2200HMOVDPTR, #TABMOVA, #02HTAB :MOVC A, A+DPTR(3)DPTR 是- 一個(gè)答案:.字節(jié)的寄存器。(10 分)01H16.(2)(A)=00H(3)214. START: MOVDPTR, #2010 HMOVR7, #10HMOVR0, #30H16.LOOP: MOVX A, DPTRMOVR0, ADPTRDECINCR0DJNZR7, LOOPRET(1)程序完成什么功能?(2)MOVX A,DPTR 這句指令是什么尋址方式?(3)DJNZR7,LOOP 這句指令的含義? (10 分)答

29、案:(1 )程序完成將片外 RAM2010H 單元一 2001H 單元的內(nèi)容,依次傳送到片內(nèi) RAM30H 3FH 單元中去。(2)寄存器間接尋址。(3) 判斷(R7)-1 是否為 0,若為 0,結(jié)束循環(huán),不為 0 繼續(xù)到 LOOP 那兒循環(huán)。15.若(A) =78H,( R0) =34H,( 34H ) =DCH,( 56H) =ABH,(cy)=1,求分別執(zhí)行下列指令后填空。(6 分)ADDC A,R0 : (A)=_,尋址方式是 _ORLA, #23H:(A)=:尋址方式是MOVA, 34H:(A)=SWAPA:(A)=答案:55H,寄存器間接尋址77H,立即尋址DCH,CDH.MOV

30、A, R0CPL AJZLABEL1INCAJZLABEL2LABEL1:INC A(2) R7 寄存器中保存的數(shù)是最后 50H 中存放的是 _。( 10 分)最大(2)比較的次數(shù),共有 9 個(gè)數(shù)與 A 中的數(shù)做比較(3)片內(nèi) RAM 40H49H 中最大的值18.已知外 RAM ( 2040H) =50H,ROM ( 2090H) =96H,內(nèi) RAM ( 20H) =85H,試求下列程序依次運(yùn)行后有關(guān)單兀的內(nèi)容。(6 分)MOV DPTR ,#2040H; (DPTR)=_MOVX A, DPTR ;尋址方式是 _ ,(A)=_MOV A, 20H;(A)=_ANL A, #38H;(A)

31、=_ ,尋址方式是 _LABEL2:DECALOOP:RET問:(1)分析上面-一段程序,何時(shí)轉(zhuǎn)向LABEL1(2)若(R0)=FFH,執(zhí)行完程序后(A)=答案:(1)當(dāng) R0的值為 FFH,轉(zhuǎn)向 LABEL1 ,(2)01H17.START:MOVR0,#40HMOVR7,#09HMOVA, R0LOOP:INCR0MOV30H,R0CJNEA, 30H, NEXTNEXT:JNCBIEIMOVA, 30HBIEI:DJNZR7, LOOPMOV50H, ASJMPLOOPRET?何時(shí)轉(zhuǎn)向 LABEL2 ?_ H。(10 分)當(dāng) R0為 00 時(shí),轉(zhuǎn)向 LABLE2問(1) A 中暫放答案:

32、2040H寄存器間址, 50H85H00H 立即尋址19.CLR CLOOP1: MOV A, R0ADDCA, R1DA AMOVR0, AINCR0INCR1DJNZ R7, LOOP1CLRAMOVACC.0, CMOVR0, ARET問:( 1)DAA 指令有何用途?(2)若執(zhí)行程序前 (R0)=20H ,(R1)=30H ,(R7)=03H ,則程序完成什么功能?程序最后 的結(jié)果放在哪些單元?( 10 分)答案 :( 1) DAA 是對(duì) A 中的數(shù)進(jìn)行十進(jìn)制數(shù)的調(diào)整。(2) 將存放在 (22H)(21H)(20H)中的 BCD 碼與 (32)(31H) (30H )單元中的 BCD

33、碼相加,結(jié)果調(diào)整為 BCD 碼后放回(23H)( 22H)(21H) (20H)單兀中,其中咼地址存放咼位字節(jié)。20. MOVR0,#20HSLOP: MOVA,R0JZLP1JBACC.7,LP2INC30HLP0: INCR0DJNZ1FH,SLOPENDLP1: INC 31HSJMP LP0LP2: INC 32HSJMP LP0問:(1)若執(zhí)行前(20H)單元中的內(nèi)容為 F1H,則程序能不能走到 LP1 處?(2)執(zhí)行前仆 H 單元中存放的是什么?(3)執(zhí)行后 30H, 31H, 32H 單元中各存放的什么數(shù)據(jù)? (10 分)(1) 不能(2) 參加統(tǒng)計(jì)的數(shù)的個(gè)數(shù)(3) 30H 中放

34、正數(shù)的個(gè)數(shù)31H 中放“ 0”的個(gè)數(shù)32H 中放負(fù)數(shù)的個(gè)數(shù)21.已知(30H ) =58H,讀程序填空。(6 分)CLR CMOV A, 30H;尋址方式是 _ , (A)=_RLC ARLC A ;(C)=_ADD A, #36H ;尋址方式是 _ ,(A)=_JZ LOOP2 ; 程序轉(zhuǎn)至 L00P1 還是 LOOP2 ?答_Loop1:MOV A, 00H直接尋址,58H1立即尋址,96HLOOP122. (30H ) =15H,問執(zhí)行完程序后,A,B,SP, 32H,33H,34H 的內(nèi)容是多少?( 10 分)MOV SP, #30HXCH A, 30HMOV B, AANL A,#0

35、FHMOV33H,AMOVA,BPUSHASWAPAANLA,#15HMOV34H,APUSHA答案 :( A ) =11H(B)=15H(SP)=32H(32H)=11H(33H)=05H(34H)=11H23.內(nèi)部RAM30H 31H單元中存放兩個(gè)無符號(hào)數(shù),讀程序回答問題。(10 分)ORG1000HSTART: CLRCMOVA,30HSUBBA,31HJCNEXTMOVA,30HXCHA,31HMOV30H,ANEXT :NOPSJMP$END( 1 ) 程序完成什么功能 ?(2) 若(30H) =89H,( 31H) =F5H 執(zhí)行程序后(30H) =_,(Cy)=_ 。答案:(1)

36、比較 30H 與 31H 中無符號(hào)數(shù)的大小,小數(shù)存于30H,大數(shù)存于 31H(2) (30H) =89H,(31H) =F5H, (Cy) =1(31H)=_四、編程題1. 編寫程序, 將外部 RAM2000H-201FH 數(shù)據(jù)塊數(shù)據(jù), 傳送到片內(nèi) RAM40H-5FH 的對(duì)應(yīng)單元 中,并統(tǒng)計(jì)其中數(shù)據(jù) 0的個(gè)數(shù),將結(jié)果放入片內(nèi) 60H 單元中。答案 : START: MOV DPTR , #2000HMOV R0 , #40HMOV R1, #1FHMOV R2 , #00HLOOP: MOVX A , DPTRMOV R0, AINC DPTRINC R0CJNE A, #00H, LOOP

37、1INC R2LOOP1: DJNZ R1, LOOPMOV 60H, R2RET2. 已知 8 位要顯示數(shù)字已存放在首地址為 30H 的片內(nèi) RAM 中,試將其轉(zhuǎn)換為共陰顯示字 段碼,存入首址為 40H 的內(nèi) RAM 中,已知 TABD 為 0-9 共陰字段碼表首址。ORG 1000HTABD: DB 3FH , 06H, 5BH, 4FH, 66HDB 6DH , 7DH , 07H, 7FH, 6FH答案 : MOV DPTR,#TABDMOV R2,#8MOV R0,#30HMOV R1,#40HLOOP:MOV A,R0MOVC A,A+DPTRMOV R1,AINC DPTRINC R0INC R1DJNZ R7,LOOPEND3.試完成程序,求 Y 值,設(shè) m, n 存在 30H 和 31H 中,Y 存在 32H 中,且 m“

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論