版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、MCS-51單片機原理及接口技術(shù)習(xí)題參考答案第一章緒論1-1 解答:第一臺計算機的研制目的是為了計算復(fù)雜的數(shù)學(xué)難題。它的特點是:計算機字長為12 位,運算速度為 5 000 次 /s,使用 18 800 個電子管, 1 500 個繼電器,占地面積為150 m2,重達30 t,其造價為100多萬美元。它的誕生,標(biāo)志著人類文明進入了一個新的歷史階段。1-2 解答:單片微型計算機簡稱單片機。一個完整的單片機芯片至少有中央處理器只讀存儲器(ROM )、定時 /計數(shù)器及I/O 接口等部件。1-3 解答:( CPU)、隨機存儲器( RAM )、單片機的發(fā)展大致經(jīng)歷了四個階段:第一階段( 1970 1974
2、 年),為 4 位單片機階段;第二階段( 1974 1978 年),為低中檔8 位單片機階段;第三階段( 1978 1983 年),為高檔8 位單片機階段;第四階段( 1983 年至今),為 8 位單片機鞏固發(fā)展階段及16 位單片機、32 位單片機推出階段。1-4 解答:Intel 公司的 MCS-48 系列、 MCS-51 系列、 MCS-96 系列產(chǎn)品;Motorola 公司的 6801、 6802、 6803、 6805、68HC11 系列產(chǎn)品;Zilog 公司的 Z8、 Super8 系列產(chǎn)品;Atmel 公司的 AT89 系列產(chǎn)品;Fairchild 公司的 F8 和 3870 系列
3、產(chǎn)品;TI 公司的 TMS7000 系列產(chǎn)品;NS 公司的 NS8070 系列產(chǎn)品;NEC 公司的 COM87 ( PD7800)系列產(chǎn)品;National 公司的 MN6800 系列產(chǎn)品;Hitachi 公司的 HD6301 、 HD63L05 、 HD6305 。1-5 解答:(1)8031/8051/8751 三種型號,稱為 8051 子系列。8031 片內(nèi)沒有 ROM ,使用時需在片外接EPROM 。8051 片內(nèi)含有4KB 的掩模ROM ,其中的程序是生產(chǎn)廠家制作芯片時燒制的。8751 片內(nèi)含有4KB 的EPROM ,用戶可以先用紫外線擦除器擦除,然后再利用開發(fā)機或編程器寫入新的程序
4、。( 2)8032A/8052A/8752A 是 8031/8051/8751 的增強型, 稱為 8052 子系列。 其中片內(nèi) ROM 和 RAM的容量比8051 子系列各增加一倍,另外,增加了一個定時/計數(shù)器和一個中斷源。( 3) 80C31/80C51/87C51BH 是 8051 子系列的 CHMOS 工藝芯片, 80C32/80C52/87C52 是 8052 子系列的 CHMOS 工藝芯片,兩者芯片內(nèi)的配置和功能兼容。1-6 解答:8052 子系列片內(nèi)ROM和RAM的容量比8051子系列各增加一倍,另外,增加了一個定時/計數(shù)器和一個中斷源。1-7 解答:AT89 系列單片機是美國At
5、mel公司的8 位Flash 單片機產(chǎn)品。它的最大特點是在片內(nèi)含有Flash 存儲器,在系統(tǒng)的開發(fā)過程中可以十分容易地進行程序的修改,使開發(fā)調(diào)試更為方便。AT89系列單片機以 8031 為內(nèi)核,是與8051 系列單片機兼容的系列。1-8 解答:高檔型單片機有AT89S51、 AT89S52、 AT89S53 和 AT89S8252 等型號,其中AT89S51 有 4KB 可下載 Flash 存儲器, AT89S52、AT89S8252 有 8KB 可下載 Flash 存儲器, AT89S53 有 12KB 可下載 Flash 存儲器。第二章 MCS-51系列單片機的結(jié)構(gòu)及原理2-1 解答:MC
6、S-51 單片機由 8 個部件組成:中央處理器(CPU),片內(nèi)數(shù)據(jù)存儲器(RAM ),片內(nèi)程序存儲器( ROM/EPROM ),輸入 /輸出接口( I/O 口,分為P0 口、 P1 口、 P2 口和 P3 口),可編程串行口,定時計數(shù)器,中斷系統(tǒng)及特殊功能寄存器(SFR)。中央處理器(CPU):單片機的核心部分,它的作用是讀入和分析每條指令,根據(jù)每條指令的功能要求,控制各個部件執(zhí)行相應(yīng)的操作。片內(nèi)數(shù)據(jù)存儲器(RAM ):存放各項操作的臨時數(shù)據(jù)。片內(nèi)程序存儲器(ROM/EPROM ):存放單片機運行所需的程序。輸入 /輸出接口( I/O 口):單片機與外設(shè)相互溝通的橋梁??删幊檀锌冢嚎梢詫崿F(xiàn)與
7、其它單片機或PC 機之間的數(shù)據(jù)傳送。定時 /計數(shù)器:具有可編程功能,可以完成對外部事件的計數(shù),也可以完成定時功能。中斷系統(tǒng):可以實現(xiàn)分時操作、實時處理、故障處理等功能。特殊功能寄存器(SFR):反映單片機的運行狀態(tài),包含了單片機在運行中的各種狀態(tài)字和控制字,以及各種初始值。/2-2 解答:EA 引腳是片內(nèi)外程序存儲器的選擇信號。當(dāng) EA 端保持高電平時,訪問內(nèi)部程序存儲器,但在 PC (程序計數(shù)器)值超過 0FFFH(對于 8051/8751/80C51 )或 1FFFH(對于 8052)時,將自動轉(zhuǎn)向訪問外部程序存儲器。當(dāng)EA 端保持低電平時,不管是否有內(nèi)部程序存儲器,則只訪問外部程序存儲器
8、。由于 8031 片內(nèi)沒有程序存儲器,所以在使用8031 時, EA 引腳必須接低電平。2-3 解答:在 MCS-51 單片機中,除P3 口具有第二功能外,還有3 條控制線具有第二功能。P3 口的第二功能:P3.0 RXD :串行數(shù)據(jù)接收端P3.1 TXD :串行數(shù)據(jù)發(fā)送端P3.2 INT 0 :外部中斷0 申請輸入端P3.3 INT1 :外部中斷1 申請輸入端P3.4 T0:定時器0 計數(shù)輸入端P3.5 T1:定時器1 計數(shù)輸入端P3.6 WR :外部 RAM 寫選通P3.7 RD :外部 RAM讀選通3 條控制線的第二功能:ALE PROG :片內(nèi) EPROM 編程脈沖。片內(nèi)具有EPROM
9、 的芯片,在 EPROM 編程期間,此引腳輸入編程脈沖。RESET VPD :備用電源。 VCC 掉電期間,此引腳可接備用電源,以保持內(nèi)部RAM 數(shù)據(jù)不丟失。EA VPP:片內(nèi) EPROM 編程電源。在對片內(nèi)具有EPROM 的芯片進行編程時,此引腳用于施加21V 編程電源。2-4 解答:MCS-51 單片機的內(nèi)部存儲空間分為數(shù)據(jù)存儲器和程序存儲器。內(nèi)部數(shù)據(jù)存儲器:共256 字節(jié)單元,包括低128 個單元和高128 個單元。低128 字節(jié)又分成3 個區(qū)域:工作寄存器區(qū)(00H1FH ),位尋址區(qū)( 20H2FH )和用戶RAM 區(qū)( 30H7FH )。高 128 字節(jié)是供給特殊功能寄存器使用的,
10、因此稱之為特殊功能寄存器區(qū)。內(nèi)部程序存儲器:在8031 片內(nèi)無程序存儲器,8051 片內(nèi)具有4KB掩模ROM , 8751 片內(nèi)具有4KBEPROM 。2-5 解答:MCS-51 單片機提供了4 組工作寄存器,對于當(dāng)前工作寄存器組的選擇,是通過PSW 中的RS1 和RS0 來進行選擇。具體關(guān)系如下表:RS1RS0當(dāng)前寄存器組00第 0組工作寄存器01第 1組工作寄存器10第 2組工作寄存器11第 3組工作寄存器2-6 解答:內(nèi)部 RAM 低 128 個單元按用途分成和用戶 RAM 區(qū)( 30H7FH )。3 個區(qū)域:工作寄存器區(qū)(00H1FH ),位尋址區(qū)(20H2FH )儲器2-7 解答:D
11、PTR 是數(shù)據(jù)指針寄存器,是一個RAM 中的數(shù)據(jù)進行操作。DPTR16 位寄存器,用來存放 16 位存儲器的地址,以便對外部數(shù)據(jù)存由高位字節(jié) DPH 和低位字節(jié) DPL 組成。2-8 解答:所謂堆棧,顧名思義就是一種以“堆”的方式工作的“棧”。堆棧是在內(nèi)存中專門開辟出來的按照“先進后出,后進先出”的原則進行存取的RAM區(qū)域。堆棧的用途是保護現(xiàn)場和斷點地址。在8051單片機復(fù)位后,堆棧指針SP 總是初始化到內(nèi)部RAM 地址 07H 。從 08H 開始就是8051 的堆棧區(qū), 這個位置與工作寄存器組1 的位置相同。因此,在實際應(yīng)用中,通常要根據(jù)需要在程序初始化時對SP 重新賦值,以改變堆棧的位置。
12、2-9 解答:程序狀態(tài)字寄存器PSW 是 8 位寄存器,用于存放程序運行的狀態(tài)信息。CY ( PSW.7):進位標(biāo)志位。AC ( PSW.6):輔助進位標(biāo)志位。F0( PSW.5)、F1(PSW.1):用戶標(biāo)志位。RS1(PSW.4)、 RS0( PSW.3):工作寄存器組選擇位。OV ( PSW.2):溢出標(biāo)志位。P( PSW.0):奇偶標(biāo)志位。2-10 解答:P0 口由一個所存器、兩個三態(tài)輸入緩沖器、場效應(yīng)管、控制與門、反相器和轉(zhuǎn)換開關(guān)組成;作為輸出口時, 必須外接上拉電阻才能有高電平輸出,作為輸入口時, 必須先向鎖存器寫“1”;作為普通I/O口使用或低 8 位地址 /數(shù)據(jù)總線使用。P1口
13、內(nèi)沒有轉(zhuǎn)換開關(guān),但有上拉電阻;只用作普通I/O 口使用。P2口比 P1口多了一個轉(zhuǎn)換控制開關(guān);作為普通I/O 口使用或高 8 位地址線使用。P3口比 P1口增加了與非門和緩沖器;具有準(zhǔn)雙向I/O 功能和第二功能。上述 4 個端口在作為輸入口使用時,應(yīng)注意必須先向端口寫“1”。2-11 解答:指令周期:執(zhí)行一條指令所需要的時間。機器周期: CPU 完成一個基本操作所需要的時間。狀態(tài):振蕩脈沖經(jīng)過二分頻后,得到的單片機的時鐘信號。拍:振蕩脈沖的周期。當(dāng)晶振頻率為12MHz 時,一個機器周期為1s;當(dāng)晶振頻率為8MHz 時,一個機器周期為3s。2-12 解答:在時鐘電路工作后,只要在單片機的RESE
14、T 引腳上出現(xiàn)24 個時鐘震蕩脈沖(兩個機器周期)以上的高電平,單片機就能實現(xiàn)復(fù)位。復(fù)位后, CPU 和系統(tǒng)都處于一個確定的初始狀態(tài),在這種狀態(tài)下, 所有的專用寄存器都被賦予默認(rèn)值,除 SP=07H , P0P3 口為 FFH 外,其余寄存器均為0。部2-13 解答:8051 單片機應(yīng)用系統(tǒng)的電壓檢測電路監(jiān)測到電源下降時,觸發(fā)外部中斷, 在中斷服務(wù)子程序中將外RAM 中的有用數(shù)據(jù)送入內(nèi)部RAM 保存。(內(nèi)部 RAM 由備用電源供電)80C51 單片機應(yīng)用系統(tǒng)的電壓檢測電路監(jiān)測到電源降低時,也出發(fā)外部中斷, 在中斷服務(wù)子程序中,除了要將外部 RAM 中有用的數(shù)據(jù)保存以外,還要將特殊功能寄存器的有
15、用內(nèi)容保護起來,然后對電源控制寄存器 PCON 進行設(shè)置。2-14 解答:單片機退出空閑狀態(tài)有兩種方法:中斷退出和硬件復(fù)位退出。第三章 MCS-51 系列單片機的指令系統(tǒng)3-1 解答:指令是規(guī)定計算機進行某種操作的命令,一臺計算機所能執(zhí)行的指令集合稱為該計算機的指令系統(tǒng)。計算機內(nèi)部只識別二進制數(shù),因此,能別計算機直接識別、執(zhí)行的指令時使用二進制編碼表示的指令,這種指令別稱為機器語言指令。以助記符表示的指令就是計算機的匯編語言指令。3-2 解答:標(biāo)號: <操作碼 > 操作數(shù) ;注釋3-3 解答:MCS-51 系列單片機提供了7 種尋址方式:( 1)立即尋址:操作數(shù)在指令中直接給出,立
16、即數(shù)前面有“#”。( 2)直接尋址:在指令中直接給出操作數(shù)地址。對應(yīng)片內(nèi)低128 個字節(jié)單元和特殊功能寄存器。( 3)寄存器尋址:以寄存器的內(nèi)容作為操作數(shù)。對應(yīng)的寄存器有:R0R7 、 A 、AB 寄存器和數(shù)據(jù)指針 DPTR 。( 4)寄存器間接尋址:以寄存器的內(nèi)容作為RAM地址,該地址中的內(nèi)容才是操作數(shù)。對應(yīng)片內(nèi)RAM 的低 128 個單元采用R0、R1 作為間址寄存器,片外RAM 低 256 個單元可用R0、R1 作為間址寄存器,整個64KB 空間可用DPTR 作為間址寄存器。( 5)變址尋址:以 DPTR 或 PC 作為基址寄存器,以累加器加形成的 16 位地址作為操作數(shù)地址。對應(yīng)片內(nèi)、
17、片外的 ROMA 作為變址寄存器,并以兩者內(nèi)容相空間。( 6)相對尋址:只在相對轉(zhuǎn)移指令中使用。對應(yīng)片內(nèi)、片外的( 7)位尋址:對可尋址的位單獨進行操作。對應(yīng)位尋址區(qū)ROM 空間。20H2FH 單元的128 位和字節(jié)地址能被8 整除的特殊功能寄存器的相應(yīng)位。3-4 解答:直接尋址方式。3-5 解答:寄存器間接尋址方式。3-6 解答:立即尋址方式,直接尋址方式,寄存器尋址方式,寄存器間接尋址方式,位尋址方式。3-7 解答:變址尋址方式3-8 解答:對于 8052 單片機內(nèi)部 RAM的高 128B ,必須采用寄存器間接尋址方式進行訪問。3-9 解答:外部數(shù)據(jù)傳送指令有 6 條:MOVXA,DPTR
18、MOVXDPTR,AMOVXA,RiMOVXRi ,AMOVCA,A+DPTRMOVCA, A+PC(1 ) MOVXA,R1MOVXA, DPTR都是訪問片外RAM ,但二者尋址范圍不同。前 1 條指令是對片外RAM 低 256 個單元的“讀”操作。后 1 條指令是對片外RAM64KB空間的“讀”操作。(2 ) MOVXA,DPTRMOVXDPTR,A訪問空間相同,但數(shù)據(jù)傳送方向不同。前 1 條指令是對片外 RAM64KB 空間的“讀”操作。后 1 條指令是對片外 RAM64KB 空間的“寫”操作。(3 ) MOVR0, AMOVXR0, A二者訪問的空間不同。前 1 條指令是對片內(nèi)RAM
19、低 128 個單元的“寫”操作。后 1 條指令是對片外 RAM 低 256 個單元的“寫”操作。( 4 ) MOVC A,A+DPTR MOVX A, DPTR二者訪問的空間不同,尋址方式不同。前 1條指令是變址尋址方式,對ROM 操作。后 1條指令是寄存器間接尋址方式,對片外RAM 操作。3-10 解答:R0 30H ,( R0) =30HA( R0),( A) =40HR1 ( A),( R1) =40HB( R1),( B) =10H( R1 )( P1 ),( R1 ) =( 40H ) =EFH P2 ( P1 ),( P2) =EFH10H 20H ,( 10H ) =20H30H
20、 ( 10H ),(30H ) =20H結(jié)果:( R0)=30H ,( A )=40H ,(R1)=40H ,( B)=10H ,( 40H)=EFH ,( P2)=EFH ,( 10H)=20H ,( 30H) =20H3-11 解答:(1)由于在工作寄存器與工作寄存器之間不能直接傳送數(shù)據(jù),所以需要借助累加器 A 。MOVA,R1MOVR0 , A(2)片外 RAM 向片內(nèi) RAM 傳送數(shù)據(jù), 不能直接進行, 需要借助累加器 A 。由于片外 RAM 是 60H 單元,地址小于 FFH ,所以間址寄存器使用 Ri 即可。MOVR1 ,#60HMOVXA, R1MOVR0,A( 3)MOVR1
21、,#60HMOVXA, R1MOV40H ,A( 4)片外數(shù)據(jù)不能直接送入片外單元,需要先將片外數(shù)據(jù)讀入累加器,然后再送到片外。MOVDPTR,#1000HMOVXMOVMOVXA, DPTRR1 ,#40HR1, A(5) ROM中的數(shù)據(jù)需要使用查表指令才能讀出來,所以此題不能使用一般的傳送指令從ROM中讀數(shù)據(jù)。MOVMOVMOVCMOVDPTR,#2000HA, #00HA, A+DPTRR2,A( 6)MOVDPTR,#2000HMOVMOVCMOVA, #00HA, A+DPTR40H ,A( 7)MOVDPTR,#2000HMOVMOVCMOVMOVXA, #00HA, A+DPTR
22、DPTR#0200HDPTR, A3-12 解答:片外 RAM 與片內(nèi) RAM 之間的數(shù)據(jù)傳送不能直接進行,需要借助累加器A 。數(shù)據(jù)交換需要使用數(shù)據(jù)交換指令XCH 。MOVDPTR,#1000HMOVXA, DPTRXCHA, 60HMOVXDPTR, A3-13 解答:本題需要采用查表指令。ORG0200HMOVDPTR,#TABMOVA, R7MOVCA, A+DPTRORG0300HTAB:DB0,1,4,9,16 ,25 ,36 ,49 ,64 ,813-14 解答:( 1)結(jié)果:( A )( R1),(A ) =40H ,( R1) =5BH ,( PSW) =81H( 2)結(jié)果:(
23、 A )( 40H ),( A ) =C3H ,(40H )=5BH ,( PSW) =80H( 3)結(jié)果:( A )(R1 ),( A )=C3H ,(R1 )=( 40H) =5BH ,( PSW) =80H( 4)結(jié)果:( A ) 03( R1) 03 ,(A )=53H ,( R1) =( 40H) =CBH ,(PSW) =80H( 5)結(jié)果:( A ) 03( A ) 47,( A) =B5H ,( PSW )=81H( 6)結(jié)果: A ( A) +( R1),( A ) =9BH ,( PSW) =05H( 7)結(jié)果: A ( A) +( 40H),(A ) =1EH,( PSW
24、) =80H( 8)結(jié)果: A ( A) +40H ,( A ) =9BH ,( PSW)=05H( 9)結(jié)果: A ( A) +( 40H) +CY ,( A) =1FH ,( PSW) =81H( 10)結(jié)果: A ( A ) -( 40H) -CY ,( A) =97H ,(PSW)=85H( 11)結(jié)果: A ( A ) - 40H - CY ,(A )=1AH ,( PSW) =01H3-15 解答:( 1)該組指令執(zhí)行后( A ) =00H ,不影響 CY 位。( 2)該組指令執(zhí)行后( A ) =00H ,影響 CY 位。ADD說明:單獨執(zhí)行INC 指令,只影響奇偶標(biāo)志位P,不影響
25、半進位標(biāo)志位指令后,將影響CY、AC 和 P位。3-16 解答:AC和進位位CY位。執(zhí)行在低本題涉及的是16 位數(shù)的減法運算,首先應(yīng)讓低8 位相減前將進位位CY 清空 0。8 位相減,然后讓高8 位帶著借位相減。注意:應(yīng)CLRCMOVA, #56HSUBBMOVA, #78HR0,AMOVA, #23HSUBBMOVA, #45HR1,A3-17 解答:A( A) 23H ,(A) =03H42H ( 42H )( A),( 42H ) =37HA( A)( R0),(A) =34HA( A ),( A) =CBH結(jié)果:( A ) =CBH3-18 解答:( 1)MOVDPTR,#1000HM
26、OVX A, DPTRCPLAMOVXDPTR, A( 2)MOVR0 ,#60HMOVXA, R0ANLA, #3FHXRLA, #03HMOVXR0, A3-19 解答:DAA 指令的作用是對 A 中剛進行的兩個 BCD 碼的加法結(jié)果進行修正,即繼續(xù)使BCD 碼加法運算的結(jié)果保持為 BCD 碼。使用時, DAA 指令只能使用在加法指令后,即ADD 指令和 ADDC 指令。3-20 解答:MOVDPTR,#1000HMOVXA, DPTRMOVB, #10MULABMOV30H ,AMOV31H ,BMOVDPTR,#2000HMOVXA, DPTRMOVB, #32MULABADDA, 3
27、0HMOV30H ,AMOVA, BADDCA, 31HMOV31H ,A3-21 解答:MOVR7 ,#10MOVDPTR,#block1MOVR0 ,#block2LOOP:MOVXA, DPTRMOVR0, AINCDPTRINCR0DJNZR7 ,LOOP3-22 解答:MOVA, #01HLOOP:MOVP0 ,ARLALCALLDELAYSJMPLOOPDELAY : MOVR7,#00HDELAY1 : MOVR6,#00HDJNZR6,$DJNZR7,DELAY1RET3-23 解答:ORLC, 11HMOV11H ,CMOVC, P1.0ORLC, 10HANLC, 11HM
28、OVP1.0 ,C3-24 解答:( 1)正確。( 2)錯誤。原因:清零指令只能用于累加器 ACC 和位操作,而本題中 E0H 只能是字節(jié)地址(位地址的范圍是 00H7FH ),所以該條指令錯誤。( 3)錯誤。原因: ACC 是直接字節(jié)地址,不能用于清零指令。( 4)正確。 ACC.0 是一個位,可以應(yīng)用到清零指令中。( 5)正確。( 6)錯誤。原因:取反指令只能用于累加器 ACC 和位操作,而本題中 E0H 只能是字節(jié)地址(位地址的范圍是 00H7FH ),所以該條指令錯誤。( 7)錯誤。原因: ACC 是直接字節(jié)地址,不能用于取反指令。( 8)正確。 ACC.0 是一個位,可以應(yīng)用到取反指
29、令中。3-25 解答:ANLA, BORLA, CMOVF, C3-26 解答:指令 LJMPaddr16 是長轉(zhuǎn)移指令,指令中提供了16 位目的地址,尋址范圍是 64KB 。指令 AJMPaddr11 是絕對轉(zhuǎn)移指令,指令中11 位目的地址,其中 a7a0 在第二字節(jié), a10a8 則占據(jù)第一字節(jié)的高3 位,尋址范圍是與PC 當(dāng)前值(本指令所在地址 +本條指令所占用的字節(jié)數(shù)2)在同一個 2K 的區(qū)域內(nèi)。3-27 解答:( 1)MOVP1 ,#0CAH; P1 CAH, P1=CAH=BMOVA, #56H; A 56H, A=56H=BJBP1.2 ,L1;若 P1.2=1 ,則轉(zhuǎn)移至 L1
30、JNBACC.3 , L2;若 ACC.3=0 ,則轉(zhuǎn)移至 L2L1 :L2 :執(zhí)行完本段程序后將轉(zhuǎn)移至L2 ,因為 P1.2=0 ,ACC.3=0 ,所以轉(zhuǎn)至 L2 。(2)MOVA, #43H; A43H, A=43H=BJBACC.2 , L1;若 ACC.2=1 ,則轉(zhuǎn)移至 L1JBCACC.6 , L2;若 ACC.6=1 ,則轉(zhuǎn)移至L2 ,同時將 ACC.6清零L1 :L2 :執(zhí)行完本段程序后將轉(zhuǎn)移至L2 ,因為 ACC.2=0 , ACC.6=1 ,所以轉(zhuǎn)至 L2 ,并且將 ACC.6 清零。3-28 解答:( 1)MOVA, P1CPLAANLA, #0F0HSWAPAMOVP
31、1 ,A(2):LOOP:JNBP1.4,L1;JNBP1.5,L2;JNBP1.6,L3;JNBP1.7,L4;LJMPLOOP;L1 :MOVP1 ,#01H;LJMPLOOP;L2 :MOVP1 ,#02H;LJMPLOOP;L3 :MOVP1 ,#03H;LJMPLOOP;L4 :MOVP1 ,#04H;LJMPLOOP;第 4 章 匯編語言程序設(shè)計4-1 解答:ORG0100HMOVA, 21HADDA, 23HMOV25H ,AMOVA, 20HADDCA, 22HMOV24H ,ARET4-2 解答:ORG0200HMOVA, 51HMOVB, #20MULABMOV53H ,A
32、MOV52H ,BMOVA, 50HMOVB, #3MULABADDA, 53HMOV53H ,AMOVA, BADDCA, 52HMOV52H ,ARET4-3 解答:開始XA 暫存YA<20?N2BYA<50?N5B1BA×BAAFUNC 保存結(jié)果返回題圖 4-1習(xí)題 4-3 流程圖ORG0300HMOVA, DATACJNEA, #20 , LOP1LOP1 :JCLOP3CJNEA, #50 , LOP2LOP2 :JCLOP4MOVB #1LJMPLOP5LOP3MOVB #2LJMPLOP5LOP4MOVB #5LOP5MULABMOVFUNC ARET4-4
33、ORG0400HMOVA mun+1JNBACC.7 LOOPCLRCMOVA numSUBBA #01HCPLAMOVnum AMOVA #num+1SUBBA #00HCPLAMOVnum+1 ALOOPRET4-5ORG0500HMOVDPTR #JPTABMOVA R2RLAJMPA+DPTRJPTABAJMPKEY0AJMPKEY1AJMPKEY2AJMPKEY15KEY0KEY1KEY2KEY154-6ORG0600HMOVR0#40HMOVDPTR#2000HMOVR7 ,#21HLOOP:MOVA, R0MOVXDPTR, AINCR0INCDPTRDJNZR7 ,LOOPRE
34、T4-7 解答:ORG0700HMOVDPTR,#DATAMOVR7 ,#10LOOP:MOVXA, DPTRORLA, #80HMOVXDPTR, AINCDPTRDJNZR7 ,LOOPRET4-8 解答:ORG0800HMOVDPTR,#3000HMOVR0,#30HMOVR7,#7LOOP:MOVXA, DPTRMOVR0, AINCDPTRINCDPTRINCR0DJNZR7,LOOPRET4-9 解答:ORG0900HMOVDPTR,#1000HMOVR1,#30HMOVR7,#31HLOOP:MOVXA, DPTRMOVR1, ACLRAMOVXDPTR, AINCDPTRINC
35、R1DJNZR7,LOOPRET4-10 解答:ORG0A00HMOVR1 ,#DAT1MOVDPTR,#DAT2MOVR6 ,#10HLOOP1:MOVA, R1CJNEA, #0DH ,LOOP2LJMPLOOP3LOOP2:MOVXDPTR, AINCR1INCDPTRDJNZR6 ,LOOP1LOOP3:RET4-11 解答:ORG0B00HMOVDPTR,#3000HMOVR7 ,#100MOVone , #00HMOVtwo , #00HMOVthree , #00HLOP1 :MOVXA, DPTRJZLOP2JNBACC.7 , LOP3INCthreeLJMPLOP4LOP2
36、 :INCtwoLJMPLOP4LOP3 :INConeLOP4 :INCDPTRDJNZR7 ,LOP1RET4-12 解答:ORG0C00HMOVR0 ,#50HMOVA, #00HMOVR7 ,#10LOP:ADDA, R0INCR0DJNZR7 ,LOPMOVB, #10DIVABMOV5AH,ARET4-13 解答:ORG0D00HMOVR0,#40HMOVA, R0MOVR7,#47LOOP:INCR0MOV30H , R0CJNEA, 30H , CHKCHK:JCLOOP1MOVA, R0LOOP1:DJNZR7,LOOPMOVMIN ,ARET4-14 解答:ORG0E00H
37、START :MOVR0,#40HMOVR7,#19CLR00HLOOP:MOVA, R0MOV30H ,AINCR0MOV31H , R0CLRCSUBBA, R0JNCNEXTMOVR0, 30HDECR0MOVR0, 31HINCR0SETB00HNEXT:DJNZR7,LOOPJB00H , STARTMOVR0,#40HMOVDPTR,#2000HMOVR7,#20LOP1 :MOVA, R0MOVXDPTR, AINCR0INCDPTRDJNZR7,LOP1RET4-15 解答:ORG0F00HMOVDPTR,#2000HMOVR7,#100LOOP1:MOVXA, DPTRCJN
38、EA, #44H ,LOOP2MOV30H , DPLMOV31H , DPHMOVDPTR,#20A0HMOVA, 30HMOVXDPTR, AINCDPTRMOVA, 31HMOVXDPTR, ALJMPLOOP3LOOP2:INCDPTRDJNZR7,LOOP1LOOP3:RET4-16 解答:ORG1000HMOVR0,#30HMOVR1,#50HMOVR7,#20LOP1 :MOVA, R0CJNEA, #0AH ,LOP2LOP2 :JNCLOP3ADDA, #30HLJMPLOP4LOP3 :ADDA, #37HLOP4 :MOVR1, AINCR0INCR1DJNZR7,LOP
39、1RET4-17 解答:ORG1100HMOVR0,#40HMOVR1,#60HMOVR7,#NLOP1 :MOVA, R0CJNEA, #41H ,LOP2LOP2 :JNCLOP3CLRCSUBBA, #30HLJMPLOP4LOP3 :CLRCSUBBA, #37HLOP4 :MOVR1, AINCR0INCR1DJNZR7,LOP1RET4-18 解答:ORG1200HMOVDPTR,#2000HMOVR0,#30HMOVR7,#5LOP1 :MOVXA, DPTRANLA, #0FHADDA, #30HMOVR0, AINCR0MOVXA, DPTRANLA, #0F0HSWAPAA
40、DDA, #30HMOVR0, AINCR0INCDPTRDJNZR7,LOP1MOVDPTR,#2005HMOVR0,#30HMOVR7,#10LOP2 :MOVA, R0MOVXDPTR, AINCR0INCDPTRDJNZR7,LOP2RET4-19 解答:ORG1300HMOVDPTR,#2000HMOVR0,#30HMOVR7,#10LOP1 :MOVXA, DPTRCLRCSUBBA, #30HMOVR0, AINCDPTRMOVXA, DPTRCLRCSUBBA, #30HSWAPAORLA, R0MOVR0, AINCDPTRINCR0DJNZR7 ,LOP1MOVDPTR,#
41、3000HMOVR0 ,#30HMOVR7 ,#10LOP2 :MOVA, R0MOVXDPTR, AINCR0INCDPTRDJNZR7 ,LOP2RET4-20 解答:ORG1400HMOVA, 40HMOVB, AMULABMOV31H ,AMOVA, 30HMOVB, AMULABCLRCSUBBA, 31HMOV30H ,ARET4-21 解答:ORG1500HMOVA, #80HLOOP:MOVP1 ,ALCALLDELRRASJMPLOOPDEL:MOVR7 ,#100DEL1 :MOVR6 ,#198DJNZR6,$DJNZR7 ,DEL1RET4-22 解答:ORG1600HMOVA, #55HLOOP:MOVP1 ,ALCALLDELRLASJMPLOOPDEL:MOVR7,#250DEL1 :MOVR6,#198DJNZR6,$DJNZR7,DEL1RET第5章定時/計數(shù)器5-1 解答:51系列單片機的內(nèi)部設(shè)有兩個定時/計數(shù)器。分別有兩種工作
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 細(xì)胞內(nèi)運輸中的納米技術(shù)應(yīng)用-洞察分析
- 醫(yī)院化驗室個人工作總結(jié)范文(7篇)
- 《保安服務(wù)培訓(xùn)》課件
- 農(nóng)機配件行業(yè)的辦公流程與質(zhì)量控制整合策略
- IT技術(shù)支持團隊問題解決的動態(tài)視覺匯報
- 健康教育課程在校園文化建設(shè)中的作用
- 企業(yè)內(nèi)部實驗室的節(jié)能減排措施
- 健康管理在提升現(xiàn)代生活品質(zhì)中的重要性
- 《物體的形狀改變以后》課件
- 創(chuàng)新客戶服務(wù)模式引領(lǐng)行業(yè)發(fā)展
- 2023山東省科創(chuàng)集團限公司集團總部招聘1人上岸筆試歷年難、易錯點考題附帶參考答案與詳解
- 數(shù)學(xué)建?;A(chǔ)學(xué)習(xí)通超星課后章節(jié)答案期末考試題庫2023年
- 屋面輕質(zhì)混凝土找坡層技術(shù)交底
- 食品工程原理課程設(shè)計花生油換熱器的設(shè)計
- 福利彩票機轉(zhuǎn)讓協(xié)議
- 中國常用漢字大全
- 農(nóng)村留守兒童的營養(yǎng)狀況及干預(yù)措施論文
- 水利工程建設(shè)匯報材料(通用3篇)
- 10篇罪犯矯治個案
- 2023河南省成人高考《英語》(高升專)考試卷及答案(單選題型)
- 教學(xué)設(shè)計《營養(yǎng)健康我守護-數(shù)據(jù)的價值》
評論
0/150
提交評論