


下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、.單項選擇題(80)1.89C51復位后,程序計數器PC中的內容是( )。A. 0030H B. 0000H C. FFFFH D. 不確定2. 89C51的直接尋址方式的尋址空間是( )。A. 片內RAM的低128B和 SFR B. 片內RAM和ROM的256BC.片外RAM的低256B D. 片內、片外RAM的00FFH和SFR3. CPU訪問片內RAM的指令類型用( )。A. MOVC B. MOVX C. MOV D. MOVD4. 當CPU響應定時/計數器T1的中斷時,( )。A. 需用軟件將TF1置1B. 需用軟件將TF1清0C. 硬件將自動對TF1置1D. 硬件將自動對TF1清0
2、5. 指令( )用于啟動89C51的定時器T1。A. CLR TR1 B. MOV TR1,00H C. SETB TR1 D. MOV TR1,0FFH6. 89C51復位后,P1口狀態是( )。A. 00HB. 11H C. FFH D. 10H9. 如8051的SP的內容是30H,順序執行PUSH ACC和POP B兩句指令后,( )。A. 寄存器SP中的內容為32H B. 累加器A中的內容與寄存器B中的內容是一樣的C. 寄存器B中的內容與原來累加器A中的內容一樣,此時A中的內容是0D. 累加器A中的內容是30H,寄存器B中的內容是31H10. 指令MOV R1,A與MOVX R1,A比
3、較,( )。A. 指令的功能一樣B. 前一條指令的目的地址在片內RAM,后一條指令的目的地址在片外RAMC. 前一條指令屬于寄存器間接尋址,后一條指令屬于直接尋址D. 前一條指令用于訪問片內RAM,后一條指令只能訪問片內的SFR區11. 當執行指令時,PC中的內容總是指示出( )。A. 正在執行的當前指令的地址 B.狀態字寄存器中的內容C. 將要執行的下一條指令地址 D.中斷的斷點的地址 12. 當CPU響應外部中斷0時,( )。A. 硬件將自動對IE0清0 B. 硬件將自動對IE0置1 C. 需用軟件將IE0清0 D. 需用軟件將IE0置113. 將89C51片外RAM某單元中的內容送累加器
4、A,應采用( )這樣的指令。A. MOV A, DPTR B. MOVX DPTR, AC. MOV DPTR, AD. MOVX A, DPTR 14. 屬于立即數尋址的指令是( )。A. MOV A,*8DH B. MOVA,40H C. MOV A,R1 D. MOV A,R015. 89C51的TMOD寄存器中的( )位用于設置定時器的工作模式。A. M1.M0B. C/T C. GATE D. TMOD.716.89C51的( )口作為擴展片外數據存儲器時的數據總線和地址總線的一部分。A. P3 B. P2 C. P1 D. P019. 如89C51的SP的內容是30H,執行LCAL
5、L SUBRTN這樣的指令后,( )。A. 當前寄存器SP中的內容為32H B. 當前寄存器SP中的內容為31HC. 當前寄存器SP中的內容為SUBRTN所對應的地址單元的內容D. 內存RAM的31H.32H單元中存放SUBRTN所對應的地址20. 執行下面的指令或指令組合,( ),兩(組)指令執行結果一樣。A. 指令MOV R0,A和指令MOVX R0,A比較B. 指令MOV A,B和指令組合PUSH B。 MOV A,07H比較C. 指令CLR 00H和指令ANL 20H,*0FEH比較D. 指令INC A和指令組合MOV R1,*01H。 ADD A,R1比較21. 89C51產生中斷時
6、,CPU將自動將( )裝入程序計數器PC中。A. 中斷入口地址 B. 累加器A的內容C. 主程序中的斷點地址D. DPTR中的內容 22. 當CPU響應串行口發送中斷時,( )。A. 需用軟件將TI置1B. 需用軟件將TI清0C. 硬件將自動對TI置1D. 硬件將自動對TI清023. 單片機對ROM的操作是( )。A. 只能讀 B. 只能寫 C. 可讀可寫 D. 只能存數據24. 屬于寄存器間接尋址的指令是( )。A. MOV A,40H B. MOV A,*8DH C. MOV A,R1 D. MOV A,R025. 將89C51的定時器T0設定為16位計數器定時方式,則T0應工作在( )。
7、A. 模式0B. 模式1 C. 模式2 D. 模式326.89C51的( )口作為擴展片外數據存儲器時16位地址總線中的高8位。A. P0 B.P1 C. P2 D. P329. 如8051的SP的內容是40H,執行RET這樣的指令后,( )。A. 當前寄存器SP中的內容為38H B. 當前寄存器SP中的內容為3EHC. 當前寄存器SP中的內容為RET所對應的地址單元的內容D. 內存RAM的41H、42H單元中存放RET指令所對應的PC值30. 執行下面的指令或指令組合,( ),兩(組)指令執行結果一樣。A. 指令DEC A和指令組合MOV R1,*01H。 SUBB A,R1比較B. 指令M
8、OV A,B和指令組合PUSH A。 POP B比較C. 指令MOV A,R0和指令MOVX A,R0比較D. 指令SETB 00H和指令ORL 20H,*01H比較31. 執行返回指令RET后,( )中的內容將會變化。A. 累加器A B. 工作寄存器 C. 程序計數器PC D. 程序存儲器0000H單元32. 要開放89C51的所有中斷,可用( )指令來設置IE寄存器。A. MOV IE,*00H B. MOV IE,*10H C. MOV IE,*1FHD. MOV IE,*9FH33. CPU訪問片外ROM的指令類型用( )。A. MOVC B. MOVX C. MOV D. PUSH3
9、4. 訪問89C51特殊功能寄存器只能用( )方式。A. 立即數尋址 B. 寄存器間接尋址C. 直接尋址 D. 變址尋址35. 定時器T0工作在模式2計數方式,要求計一個脈沖就溢出,則計數初值為( )。A. 00HB. FFH C. 01H D. FFFFH38. 89C51的P3口除了用作外部中斷、串口輸入/輸出等第二功能外,也可用作( )。A. 數據總線 B. 通用的I/O口 C. 地址總線高8位D. 地址總線低8位39. 如89C51的寄存器SP的內容是07H,執行PUSH A指令后,( )。A. 片內RAM 07H單元內容與累加器A的內容一樣 B. 片外RAM 07H單元內容與累加器A
10、的內容一樣C. 片外RAM 08H單元內容與累加器A的內容一樣D. 片內RAM 08H單元內容與累加器A的內容一樣40. 執行下面的指令或指令組合,( ),兩(組)指令執行結果一樣。A. 指令SETB 20H和指令MOV 20H,*0FFH比較B. 指令SETB 20H和指令組合MOV R0,*20H。 MOV R0,*0FFH比較C. 指令SETB 20H和指令組合MOV 20H,*11H比較D. 指令CLR A和指令組合MOV R2,A。 XRL A,R2比較41. 改變( )中的內容就可改變程序執行的方向。A. 程序計數器PC B. 累加器A C. 堆棧指針SP D. 狀態字寄存器PSW
11、 42. 指令MOVC A,A+DPTR可以訪問( ) 。A. 片外RAM的64 KB空間 B. 片內RAM空間C. 程序存儲器空間 D. 片內和片外的RAM空間43. 對RAM的操作是( )。A. 只能讀 B. 只能寫 C. 可讀可寫 D. 只能存數據44. 要關閉89C51的所有中斷,可用( )指令來設置IE寄存器。A. MOV IE,*00H B. MOV IE,*11H C. MOV IE,*1FH D. MOV IE,*9FH45. 關于89C51定時器T1溢出標志位TF1正確的描述是( )。A. 溢出時,硬件自動將TF1清0 B. 溢出時,需用軟件將TF1置1C. 溢出時,硬件自動
12、將TF1置1 D. 中斷響應后必須用軟件將TF1清046. 當89C51采用12MHz晶振,則引腳ALE輸出的頻率不會超過( )。A. 1MHz B. 1.2MHz C. 500kHz D. 2MHz49. 執行指令CJNER0,*3CH,TABL0,下面描述正確的是( )。A. 如R0中的內容等3CH,程序跳轉到TABL0處執行B. 如R0中的內容不等于3CH,程序跳轉到TABL0處執行C. 如R0中的內容所指地址單元內容等于3CH,程序跳轉到TABL0處執行D. 如R0中的內容所指地址單元內容不等于3CH,程序跳轉到TABL0處執行50. P1口地址為90H,執行下面指令或指令組合,( )
13、,兩(組)指令執行結果一樣。A. 指令MOV P1,R1和指令組合MOV A,R1。 MOV P1,A比較B. 指令MOV A,P1和指令組合MOV R1,P1。 MOV A,R1比較C. 指令SETB P1.7和指令組合MOV A,*17H。 ORL P1,A比較D. 指令MOV P1,A和MOV 90H,A比較51.89C51產生中斷時,CPU將自動改變( )中的內容。A. 累加器A B. 工作寄存器 C. 程序計數器PC D. 程序存儲器0000H單元52. 89C51的立即數尋址方式的尋址空間是( )。A. 片外RAM B. 程序存儲器 ROMC. 片內RAM D. 片內和片外RAM5
14、3. CPU訪問片外RAM的指令類型用( )。A. MOVC B. MOVX C. MOV D. PUSH54. 當CPU響應定時/計數器T0的中斷時,( )壓入堆棧。A. 需用軟件將當前PC值B. 需用軟件將中斷入口地址C. 硬件自動將當前PC值 D. 硬件自動將中斷入口地址55. 關于89C51定時器T1溢出標志位TF1正確的描述是( )。A. 溢出時,硬件自動將TF1置1 B. 溢出時,需用軟件將TF1置1C. 溢出時,硬件自動將TF1清0 D. 中斷響應后必須用軟件將TF1清056. 如果要P1口作為輸入口用,可以先用指令( )對P1口進行操作。A. MOV P1,*0FFH B. M
15、OV P1,*0FFHC. MOV P1,*00H D. MOV P1,*00H59. 執行查表指令MOVC A,A+PC后,當前A中的內容是( )。A. 原來A中的內容與PC中的內容之和B. 執行該指令時,當前PC所指地址單元中的內容與原來A中的內容之和C. 執行該指令時,當前指令下一條指令對應PC中的內容與原來A中的內容之和 所指地址單元的內容D. 原來A中的內容60. 執行下面的指令或指令組合,( ),兩(組)指令執行結果一樣。A. 指令SETB 01H和指令ORL 20H,*01H比較B. 指令SWAP A和執行四遍指令RL A比較C. 指令SWAP A和執行四遍指令RLC A比較D.
16、 指令SWAP A和執行四遍指令RRC A比較61. 在程序開始執行前,必須將其起始地址送入( )。A. 堆棧指針SP B. 狀態字寄存器PSW C. 程序計數器PC D. 累加器A62. 屬于直接尋址的指令是( )。A. MOV A,R1 B. MOV A,*8DH C. MOV A,40H D. MOV A,R063. 將89C51擴展程序存儲器EPROM單元中常數送累加器A,應采用( )這樣指令。A. MOVC A,A+DPTR B. MOVC A,DPTRC. MOVX A,A+DPTR D. MOVX A,DPTR64. 為了使中斷能正確返回,在中斷子程序中( )指令必須成對出現。A
17、. ADDC和SUBB B. PUSH和POP C. INC和DEC D. CJNE和DJNE65. 定時器T1工作在模式2計數方式,要求計3個脈沖就溢出,則計數初值為( )。A. FFFCH B. FCH C. FDH D. 03H66. 89C51的特殊功能寄存器可以用( )方式進行訪問。A. 寄存器間接尋址 B. 立即數尋址 C. 變址尋址 D. 直接尋址69. 執行指令MOVC A,A+DPTR后,當前A中的內容是( )。A. 原來A中的內容與DPTR中的內容之和B. 寄存器DPTR中的內容為地址的單元中內容與原來A中的內容之和C. PC的內容、原來A的內容、DPTR的內容三者之和所指
18、地址單元的內容D. DPTR的內容與原來A的內容之和所指地址單元的內容70. R1的內容為40H,執行下面的指令或指令組合,( ),兩(組)指令執行結果一樣。A. 指令ANL 40H,*40H和指令組合MOV A,R1。 ANL 40H,A比較B. 指令ANL A,R1和指令ANL A,*40H比較C. 指令ANL A,R1和指令MOV 40H,R1。 ANL A,40H比較D. 指令ANL A,R1和指令ANL A,*40H比較71. 執行調用指令LCALL后,( )中的內容由硬件自動改變。A. 累加器A B. 工作寄存器 C. 程序計數器PC D. 程序存儲器0000H單元72. 89C5
19、1的寄存器間接尋址方式的尋址空間是( )。A. 特殊功能寄存器SFR B. 片內和片外RAM的00FFHC. 片內RAM的80HFFH D. 片內RAM的低128B和片外RAM73. 將89C51累加器A中的內容送片外RAM某單元,應采用( )這樣的指令。A. MOV A, DPTR B. MOVX DPTR, AC. MOV DPTR, A D. MOVX A, DPTR74. 當執行中斷返回指令RETI時,( )彈出,送程序計數器PC。A. 硬件自動將當前棧頂2字節內容 B. 硬件自動將指令RETI對應的地址C. 需用軟件將當前棧頂2 字節內容 D. 硬件自動在ROM中找斷點地址75. 用
20、指令( )可以讓正在計數的定時器T0停止計數。A. CLR TR0 B. MOV TR0,00H C. SETB TR0 D. MOV TR0,0FFH76. 89C51內部RAM位地址( )對應字節地址21H的最低一位。A. 00H B. 01H C. 08H D. 10H79. 執行指令DJNZ R1,TABL1,下面描述正確的是( )。A. R1中的內容如不等于零,程序跳轉到TABL1處執行B. R1中的內容減1如不等于零,程序跳轉到TABL1處執行C. R1中的內容加1如有溢出,程序跳轉到TABL1處執行D. R1中的內容減1如等于零,程序跳轉到TABL1處執行80. R1的內容為50
21、H,執行下面的指令或指令組合,( ),兩(組)指令執行結果一樣。A. 指令ORL 50H,*40H和指令組合MOV A,R1。 ORL 50H,A比較B. 指令ORL A,R1和指令ANL A,*50H比較C. 指令ORL A,R1和指令MOV 50H,R1。 ORL A,50H比較D. 指令ORL A,R1和指令ORL A,*50H比較7. 89C51單片機系統的擴展RAM和I/O口是按( )編址的。A. 外部數據存儲器統一 B. 外部RAM和內部RAM統一C. RAM區和I/O口地址區分別D. 外部程序存儲器統一8. A/D轉換器ADC0809與MC14433比較,則( )。A. ADC0
22、809的轉換精度高 B. ADC0809的轉換速度快C. MC14433的轉換速度快 D. ADC0809的抗干擾能力強17. 器件( )可以用作擴展89C51片外數據或程序存儲器的地址鎖存器。A. 8155A B. 27128 C. 6264 D. 74LS37318. D/A轉換器是將( )的器件。A. 模擬信號轉換成數字信號 B. 多路數字信號集中傳輸C. 數字信號轉換成模擬信號D. 輸出信號與8051進行隔離27. 外擴片外存儲器時,8031的引腳PSEN(29腳)應該與片外( )相連。A. EPROM的數據輸出選通線B. RAM的寫選通信號線C. EPROM的片選線D. RAM的片選
23、線28. 要選擇ADC0809的IN3通道進行轉換,則ADDA、ADDB、ADDC按順序為( )。A. 010 B. 011 C. 111 D. 11036. 要選擇ADC0809的IN6通道進行轉換,則ADDC、ADDB、ADDA按順序為( )。A. 001 B. 110 C. 011 D. 11137. 如果要確定8155的工作狀態,應當將適當的命令字寫入( )。A. 8155的PA口B. 8155的狀態寄存器 C. 8155的PC口D. 8155的指令寄存器47.共陰極LED顯示7,應向各控制端dp、g、f、e、d、c、b、a送入( )信號。A. 01111101 B. 00000111
24、 C. 00000110 D. 0111011148. A/D轉換器ADC0809與MC14433比較,則( )。A. ADC0809的轉換精度高 B. MC14433的轉換精度高C. MC14433的轉換速度快 D. ADC0809的抗干擾能力強57. 共陰極LED顯示6,應向各控制端dp、g、f、e、d、c、b、a送入()信號。A. 01111101 B. 00000110 C. 00000111D. 0111011158. A/D轉換器是將( )的器件。A. 數字信號轉換成模擬信號B. 多路模擬信號集中傳輸67. 共陽極LED顯示8,應向各控制端dp、g、f、e、d、c、b、a送入( )
25、信號。A. 10000000 B. 00000000 C. 01111111D. 1111111168. A/D轉換器ADC0809與MC14433比較,則( )。A. ADC0809的轉換精度高 B. ADC0809的轉換速度慢C. MC14433的抗干擾能力強 D. ADC0809的抗干擾能力強C. 模擬信號轉換成數字信號D. 輸入信號與8051進行隔離77. 當8155的PA和PB口工作在選通I/O方式時,此時PC口( )。A. 作為PA和PB口的聯絡信號B. 為輸出口 C. 為輸入口D. 也可以工作在選通I/O方式78. A/D轉換器MC14433的( )。A. 轉換精度與10位二進制
26、的相當 B. 屬逐次逼近型轉換器C. 轉換結果不能直接由8031數據總線輸入 D. 數據輸出信號是三態的1. B 2. A 3. C 4. D 5. C 6. C 7. A 8. B 9. B 10. B11. C 12. A 13. D 14. B 15. A 16. D 17. D 18. C 19. A 20. C21. A 22. B 23. A 24. D 25. B 26. C 27. A 28. D 29. B 30. D31. C 32. D 33. A 34. C 35. B 36. C 37. D 38. B39. D 40. D41. A42. C 43. C 44. A
27、 45. C 46. D 47. B 48. B 49. D 50. D51. C 52. B 53. B54. C 55. A 56. A 57. A 58. C 59. C 60. B61. C 62. C63. A 64. B 65. C 66. D 67. A 68. C 69. D 70. D71. C 72. D 73. B 74. A75. A 76. C 77. A 78. C 79. B 80. D二、程序解釋(32)對每小題程序中劃線的指令含義(或指令作用)進行解釋,并說明程序的作用。1. 程序解釋 ORG 100HMOV A,R0 ;R0的內容送A ANL A,*0FHM
28、OV R1,A MOV A,R0SWAP A ;A的內容高低4位交換 ANL A,*0FHMOV R2,A SJMP $ ;等待 END該程序的作用是:將原R0中數據按照高低4位分成兩個字節,低位字節保存在R1中,高位字節保存到R2中。2. 程序解釋 ORG 30HMOV R0,*data1 ; data1送R0 MOV R1,*data2MOVR2,*2CLR CLOOP: MOVA,R0SUBB A,R1 ;(A)-(C)-(R1)A MOV R0,AINC R0INC R1DJNZR2,LOOP ;(R2)-1不等于零,跳LOOP處SJMP $END該程序的作用是:將data1中的雙字節
29、數據減去data2中的雙字節數據,結果保存到data1中3. 程序解釋ORG 30HVARDATA 30HFUNCDATA 31HMOV A,VAR ;30單元的內容送AJZ DONE ;A為零轉移JNB ACC.7,POSI ;A的最高位為0(正數)轉移MOV A,*0FFH ;提示:0FFH表示-1SJMP DONEPOSI:MOV A, *01HDONE:MOV FUNC,ASJMP $END該程序的作用是:判斷30H單元中的內容,結果放在31H單元中。大于0放1,小于0放-1,等于零放0。 4. 程序解釋 ORG 100HMOV A, R3RL A ;A左循環一位(即乘2)MOV DP
30、TR,*BRTAB ;絕對轉移地址表起始地址送DPTR JMP A+DPTR ;(PC)=(A)+(DPTR) BRTAB:AJMPROUT000AJMPROUT001AJMPROUT002AJMPROUT127END該程序的作用是:本程序完成128分支轉移操作,根據R3中的數值轉移到相應的128個分支程序中。5. 程序解釋ORG 0030H MOV R0, *22H ; 立即數22H送R0 MOV R0, *00H INC R0 ; R0中的內容加1 MOV R0, *01H INC R0MOV R0, *02H ; 02H送24H單元SJMP $END該程序的作用是:向單片機內部RAM的2
31、2H,23H,24H單元分別送數據00,01,02。 6. 程序解釋 ORG 0030H MOV A, 20H MOV B, 21H DIV AB ; A除以B MOV 31H, A ; 商送30H單元 IMOV 31H,B ; 余數送31H單元SJMP$END該程序的作用是:將20H單元中有一個二進制數除以21H單元中二進制數,商保存到30H單元,余數保存到31H。7. 程序解釋CHENGJIDATA 1000HGRADA DATA20HGRADB DATA 21H MOVGRADA,*00HMOV GRADB,*00H MOVR2,*100 MOVDPTR,*CHENGJI ;1000H送
32、DPTR LOOP:MOVXA,DPTRCJNEA,*60,LOOP1 LOOP1: JNC NEXT1INC GRADB ;21H單元的內容加1 SJMP NEXTNEXT1: INC GRADANEXT: INC DPTRDJNZ R2,LOOP ;(R2)-1R2 不為零,轉移 SJMP $END該程序的作用是 本程序完成對100個數(如100個學生成績)的過濾統計,成績在60以上的學生統計到GRADA,<60的學生統計到GRADB。8. 程序解釋LEN DATA 20HSUM DATA 21H BLOCK DATA 22HCLRA ;A清0 MOV R2,LEN MOV R1,*
33、BLOCK LOOP:ADDA,R1 ;(A)+(R1)A INC R1CHECK:DJNZ R2,LOOP ;LEN個單元未加完,繼續 MOV SUM,A SJMP $ END該程序的作用是:完成BLOCK單元開始的LEN單元中數據個數的累加,累加結果保存到SUM單元中。 9. 程序解釋XX DATA 40HYY DATA41HMOVA,XX JZ DONE MOVR0,*0FFH ;提示:0FFH表示-1 JNB ACC.7,NEG ;若A< 0,則轉向NEGMOVR0,*01H ; 01送R0 NEG:MOV A, R0DONE:MOV YY,A ;(A)送41H單元 SJMP$
34、END該程序的作用是:判斷40H單元中的內容,結果放在41H單元中。大于0放1,小于0放-1,等于0放0。 10. 程序解釋ONEDATA 30HTWO DATA 31H;TWO地址定義為31HMAXDATA 32HCLRC;C清零MOV A,ONESUBB A,TWO;(A)-(31H)結果送AJNC XMAXYMAX:MOVA,TWOSJMPDONEXMAX:MOVA,ONEDONE:MOVMAX,A該程序的作用是:本程序完成ONE和TWO的兩個單元中的數的比較,大數存入MAX單元中。 11. 程序解釋BLOCK1 DATA 20HBLOCK2 DATA 40H MOV R0,*BLOCK
35、1 MOV R1,*BLOCK2 MOV R2,*03 CLR CLOOP: MOV A,R0 ;被加數送A ADDC A,R1 ;帶進位加法 MOV R0,A ;和送(R0) INC R0 INC R1 DJNZ R2,LOOP1 SJMP $ END該程序的作用是:內部RAM中BLOCK1(20H)開始的三字節數與BLOCK2(40H)開始的兩個三字節數相加,和數存放到BLOCK1開始的單元。 12. 程序解釋SHIFT:MOV DPTR,*TABJMOV A,R2RL A ;A乘2ADD A,R2JMP A+DPTR;跳轉到(A)+(DPTR)PCTABJ:LJMP PRG0;跳轉到PR
36、G0 LJMP PRG1LJMP PRGN該程序的作用是:根據內部RAM中R2數據轉向不同的子程序,R2=0轉PRG0,R2=1轉PRG1, R2=N轉PRGN 13. 程序解釋START:CLR AMOV R2,*10 MOV R1,*21H ;21H送R1 NEXT: ADD A,R1 ;(A)+(R1)A INC R1 DJNZ R2,NEXT ;未加完,跳轉 MOV22H,A SJMP $ END該程序的作用是:完成21H單元開始的10個數據塊的累加,結果保存到22H單元。14. 程序解釋LEN DATA 20HMAX DATA 21H ADDR DATA 30H MOV MAX,*0
37、0H MOV R0,*ADDR LOOP: MOV A,R0 CJNE A,MAX,NEXT1 ;(A)與(MAX)比較,不等去NEXTNEXT1: JC NEXT ;C=1 去NEXT MOV MAX,ANEXT: INC R0 ;R0內容加1 DJNZ LEN,LOOP SJMP $ END該程序的作用是:內部RAM中ADDR(30H)開始的x個數據的比較,將最大的數字送MAX單元。x由LEN(20H)單元給出。 15. 程序解釋 MOV A,R0ANL A,*0FH ;0FH與A相與,結果送A MOV DPTR,*ASCTABMOVC A,A+DPTR ;查表 MOV R0,A ; 查表
38、結果存入R0 SJMP $ASCTAB:DB 0, 1, 2, 3, 4 DB 5, 6, 7, 8, 9 DB A, B, C, D, E , F END該程序的作用是:將R0中低4位的0F的十六進制數據轉換成ASCTAB中的編碼存放到R0中。16. 程序解釋 ORG 100HMERG:MOVX A,R0 ; 讀片外RAM第一字節ANL A,*0FHSWAP A ;高低4位相互交換 MOV B,A INC R0MOVX A,R0 ANL A,*0FHORL A,B ;A或B, 結果送A DEC R0 MOVX R0,A SJMP $ END該程序的作用是:將R0指向的兩個字節的低4位和并為一
39、個字節,保存到原R0指向的存儲單元。 17. 程序解釋START:MOV DPTR,*DTATABMOVA,R4 ;(R4)A ADD A,DPL ;(DPL)+(A)A MOVDPL,ACLR A ;清AADDCA,DPHMOVDPH,A CLR A MOVCA,A+DPTR MOVR5,A RETDTATAB: DB ;元素表格,高字節在前 DB END該程序的作用是:根據R4中的內容(元素序號)在DTATAB表格中查表,將查表得到的數據存入R5中。18. 程序解釋START:MOV A, R0ACALL SQR ;調用子程SQR MOV R2,AMOV A, R1 ACALL SQRAD
40、D A,R2 ;(R2)+(A)A MOV R2,A SJMP $SQR: ADD A,*01HMOVC A,A+PC ;查平方表 RETSQRTAB:DB 0,1,4,9,16 ;平方表 DB 25,36,49,64,81 END該程序的作用是:將R0和R1中的兩個個位數進行平方元算,然后相加,和存入R2中。19. 程序解釋MOV R2,*0AHMOV R0,*50HCLR ALOOP: MOV R0,A ;(A)(R0) INC R0DJNZ R2,LOOP ;(R2)-1不等于0,跳轉 RET ;子程序返回 END 該程序的作用是: 將50H59H單元置0 20. 程序解釋CONT:MO
41、V R0, *10 ;10送R0 MOV 31H,*00HMOV R1,*01HCLOP:MOV A,R1CLR CRLC A ;乘2 ADD A,31H ;(A)+(31H)結果送A MOV 31H,A INC R1 DJNZ R0,CLOPRETEND該程序的作用是: 將110十個數乘2后再累加,結果送31H單元。 21. 程序解釋DLAY:MOV R7,*02H ;02H送R7 DL:MOVR6,*0FFHDL1:DJNZ R6,DL1 ;(R6)-1不為零轉移。DJNZ R7,DL RETEND ;程序結束偽指令 該程序的作用是:利用R6,R7實現雙循環延時子程序22. 程序解釋MATH DATA 1000H PASS DATA 20HNOPASS DATA 21H MOV PASS,*00HMOV NOPASS,*00H MOV R2,*0C8HMOV DPTR,*MATHLOOP:MOVX A, DPTR ;片外單元(DPTR)ACJNE A,*60,LOOP1 ;(A)不等于60轉移 LOOP1: JNC NEXT1NEXT: INC NOPASS SJMP NEXT2NEXT1: INC PASS ;PASS單元內容加1 NEXT2: INC DPTR DJNZ R2,LOOP RET END該程序的作用是:完成1000H開
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 綿竹中學高2023級2024-2025學年度(下)期末模擬檢測(政治)
- 記賬實操-金屬材料銷售公司的賬務處理
- 河南省名校大聯考2024-2025學年高一下學期4月期中生物試卷(有答案)
- 2024-2025學年下學期高二生物人教版期末必刷常考題之群落及其演替
- 2024-2025學年下學期高二生物滬科版期末必刷常考題之保護環境實現人類與自然的和諧相處
- 山東統考新聞題目及答案
- 軟件學院基礎題目及答案
- 日語經濟題目大全及答案
- 10《靜電場中的能量》-2025高中物理水平合格考備考知識清單+習題鞏固
- 2 9 函數模型及應用-2026版53高考數學總復習A版精煉
- 2025中國聯通福建省分公司招聘112人高頻重點提升(共500題)附帶答案詳解
- 2025年中核匯能有限公司招聘筆試參考題庫含答案解析
- 池州八中英才班數學試卷
- 老年照護培訓課件
- 2023-2024學年北京市朝陽區四年級下學期期末英語真題及答案
- 幕墻工程項目演練
- 中國人民大學-政治經濟學-第12章-社會主義基本經濟制度
- 2023年學校管理心理學考試復習題庫(含答案)
- 關于納粹德國元首希特勒的歷史資料課件
- 北京石油化工學院《數據采集與預處理》2022-2023學年第一學期期末試卷
- 物業燃氣安全培訓課件
評論
0/150
提交評論