



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、.單片機原理及接口技術(shù)教材習題全部解答第1章緒論1-1 解答:第一臺計算機的研制目的是為了計算復雜的數(shù)學難題。它的特點是:計算機字長為12 位,運算速度為 5 000 次 /s,使用 18 800 個電子管, 1 500 個繼電器,占地面積為150 m2,重達 30 t,其造價為100多萬美元。它的誕生,標志著人類文明進入了一個新的歷史階段。1-2 解答:單片微型計算機簡稱單片機。 一個完整的單片機芯片至少有中央處理器 ( CPU)、隨機存儲器( RAM )、只讀存儲器( ROM )、定時 /計數(shù)器及 I/O 接口等部件。1-3 解答:單片機的發(fā)展大致經(jīng)歷了四個階段:第一階段( 1970 19
2、74 年),為 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 解答:'.AT
5、89 系列單片機是美國Atmel 公司的 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 存儲器。第 2 章 MCS-51系
6、列單片機的結(jié)構(gòu)及原理2-1 解答:MCS-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 口):單片機與外
7、設(shè)相互溝通的橋梁??删幊檀锌冢嚎梢詫崿F(xiàn)與其它單片機或PC 機之間的數(shù)據(jù)傳送。定時 /計數(shù)器:具有可編程功能,可以完成對外部事件的計數(shù),也可以完成定時功能。中斷系統(tǒng):可以實現(xiàn)分時操作、實時處理、故障處理等功能。特殊功能寄存器(SFR):反映單片機的運行狀態(tài),包含了單片機在運行中的各種狀態(tài)字和控制字,以及各種初始值。2-2 解答:EA 引腳是片內(nèi)外程序存儲器的選擇信號。當EA 端保持高電平時,訪問內(nèi)部程序存儲器,但在PC(程序計數(shù)器)值超過 0FFFH(對于 8051/8751/80C51 )或 1FFFH(對于 8052)時,將自動轉(zhuǎn)向訪問外部程序存儲器。當 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
9、 :片內(nèi) EPROM 編程脈沖。片內(nèi)具有 EPROM 的芯片,在 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ū)( 30H7
10、FH )。高 128 字節(jié)是供給特殊功能寄存器使用的,因此稱之為特殊功能寄存器區(qū)。內(nèi)部程序存儲器:在8031 片內(nèi)無程序存儲器,8051 片內(nèi)具有4KB掩模ROM , 8751 片內(nèi)具有4KBEPROM 。2-5 解答:MCS-51 單片機提供了4 組工作寄存器,對于當前工作寄存器組的選擇,是通過PSW 中的 RS1 和RS0 來進行選擇。具體關(guān)系如下表:RS1RS0當前寄存器組00第 0 組工作寄存器01第 1 組工作寄存器10第 2 組工作寄存器11第 3 組工作寄存器2-6 解答:內(nèi)部 RAM 低 128 個單元按用途分成3 個區(qū)域:工作寄存器區(qū)(00H1FH ),位尋址區(qū)( 20H2F
11、H )和用戶 RAM 區(qū)( 30H7FH )。2-7 解答:DPTR 是數(shù)據(jù)指針寄存器,是一個 16 位寄存器,用來存放 16 位存儲器的地址,以便對外部數(shù)據(jù)存儲器 RAM 中的數(shù)據(jù)進行操作。 DPTR 由高位字節(jié) DPH 和低位字節(jié) DPL 組成。2-8 解答:所謂堆棧,顧名思義就是一種以“堆”的方式工作的“?!薄6褩J窃趦?nèi)存中專門開辟出來的按照“先進后出,后進先出”的原則進行存取的RAM區(qū)域。堆棧的用途是保護現(xiàn)場和斷點地址。在8051單片機復位后,堆棧指針SP 總是初始化到內(nèi)部RAM 地址 07H 。從 08H 開始就是8051 的堆棧區(qū), 這個位置與工作寄存器組1 的位置相同。因此,在實
12、際應(yīng)用中,通常要根據(jù)需要在程序初始化時對SP 重新賦值,以改變堆棧的位置。2-9 解答:程序狀態(tài)字寄存器PSW 是 8 位寄存器,用于存放程序運行的狀態(tài)信息。CY ( PSW.7):進位標志位。AC ( PSW.6):輔助進位標志位。F0( PSW.5)、F1(PSW.1):用戶標志位。RS1(PSW.4)、 RS0( PSW.3):工作寄存器組選擇位。'.OV ( PSW.2):溢出標志位。P( PSW.0):奇偶標志位。2-10 解答:P0 口由一個所存器、兩個三態(tài)輸入緩沖器、場效應(yīng)管、控制與門、反相器和轉(zhuǎn)換開關(guān)組成;作為輸出口時, 必須外接上拉電阻才能有高電平輸出, 作為輸入口時
13、, 必須先向鎖存器寫 “1”;作為普通 I/O 口使用或低 8 位地址 /數(shù)據(jù)總線使用。P1口內(nèi)沒有轉(zhuǎn)換開關(guān),但有上拉電阻;只用作普通I/O 口使用。P2口比 P1口多了一個轉(zhuǎn)換控制開關(guān);作為普通I/O 口使用或高 8 位地址線使用。P3口比 P1口增加了與非門和緩沖器;具有準雙向I/O 功能和第二功能。上述 4 個端口在作為輸入口使用時,應(yīng)注意必須先向端口寫“1”。2-11 解答:指令周期:執(zhí)行一條指令所需要的時間。機器周期: CPU 完成一個基本操作所需要的時間。狀態(tài):振蕩脈沖經(jīng)過二分頻后,得到的單片機的時鐘信號。拍:振蕩脈沖的周期。當晶振頻率為12MHz 時,一個機器周期為1s;當晶振頻
14、率為8MHz 時,一個機器周期為3s。2-12 解答:在時鐘電路工作后,只要在單片機的RESET 引腳上出現(xiàn)24 個時鐘震蕩脈沖(兩個機器周期)以上的高電平,單片機就能實現(xiàn)復位。復位后, CPU 和系統(tǒng)都處于一個確定的初始狀態(tài),在這種狀態(tài)下, 所有的專用寄存器都被賦予默認值,除 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ā)外部
15、中斷, 在中斷服務(wù)子程序中,除了要將外部 RAM 中有用的數(shù)據(jù)保存以外,還要將特殊功能寄存器的有用內(nèi)容保護起來,然后對電源控制寄存器 PCON 進行設(shè)置。2-14 解答:單片機退出空閑狀態(tài)有兩種方法:中斷退出和硬件復位退出。第 3 章 MCS-51 系列單片機的指令系統(tǒng)3-1 解答:指令是規(guī)定計算機進行某種操作的命令,一臺計算機所能執(zhí)行的指令集合稱為該計算機的指令系統(tǒng)。計算機內(nèi)部只識別二進制數(shù),因此,能別計算機直接識別、執(zhí)行的指令時使用二進制編碼表示的指令,這種指令別稱為機器語言指令。以助記符表示的指令就是計算機的匯編語言指令。3-2 解答:標號: <操作碼 > 操作數(shù) ;注釋 3
16、-3 解答:'.MCS-51 系列單片機提供了7 種尋址方式:( 1)立即尋址:操作數(shù)在指令中直接給出,立即數(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 作為間
17、址寄存器。( 5)變址尋址:以DPTR 或 PC 作為基址寄存器,以累加器A 作為變址寄存器,并以兩者內(nèi)容相加形成的16 位地址作為操作數(shù)地址。對應(yīng)片內(nèi)、片外的ROM 空間。( 6)相對尋址:只在相對轉(zhuǎn)移指令中使用。對應(yīng)片內(nèi)、片外的ROM 空間。( 7)位尋址:對可尋址的位單獨進行操作。對應(yīng)位尋址區(qū)20H2FH 單元的 128 位和字節(jié)地址能被8 整除的特殊功能寄存器的相應(yīng)位。3-4 解答:直接尋址方式。3-5 解答:寄存器間接尋址方式。3-6 解答:立即尋址方式,直接尋址方式,寄存器尋址方式,寄存器間接尋址方式,位尋址方式。3-7 解答:變址尋址方式3-8 解答:對于 8052 單片機內(nèi)部
18、RAM的高 128B ,必須采用寄存器間接尋址方式進行訪問。3-9 解答:外部數(shù)據(jù)傳送指令有 6 條:MOVXA,DPTRMOVXDPTR,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 條指令是對片外
19、RAM64KB 空間的“寫”操作。(3 ) MOVR0, AMOVXR0, A二者訪問的空間不同。前 1 條指令是對片內(nèi) RAM 低 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 )(
20、 P1 ),( R1 ) =( 40H ) =EFH P2 ( P1 ),( P2) =EFH10H 20H ,( 10H ) =20H30H ( 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 是
21、 60H 單元,地址小于 FFH ,所以間址寄存器使用 Ri 即可。MOVR1 ,#60HMOVXA, R1MOVR0,A( 3)MOVR1 ,#60HMOVXA, R1MOV40H ,A(4)片外數(shù)據(jù)不能直接送入片外單元,需要先將片外數(shù)據(jù)讀入累加器,然后再送到片外。MOVDPTR,#1000HMOVXA, DPTRMOVR1 ,#40HMOVXR1, A(5) ROM 中的數(shù)據(jù)需要使用查表指令才能讀出來,所以此題不能使用一般的傳送指令從ROM 中讀數(shù)據(jù)。MOVDPTR,#2000HMOVA, #00HMOVCA, A+DPTRMOVR2,A( 6)MOVDPTR,#2000HMOVA, #0
22、0H'.MOVCA, A+DPTRMOV40H ,A( 7)MOVDPTR,#2000HMOVA, #00HMOVCA, A+DPTRMOVDPTR,#0200HMOVXDPTR, 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 ,3
23、6 ,49 ,64 ,813-14 解答:( 1)結(jié)果:( A )( R1),(A ) =40H ,( R1) =5BH ,( PSW) =81H( 2)結(jié)果:( 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(
24、6)結(jié)果: A ( A) +( R1),( A ) =9BH ,( PSW) =05H( 7)結(jié)果: A ( A) +( 40H),(A ) =1EH,( PSW) =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í)行后(
25、 A ) =00H ,不影響 CY 位。( 2)該組指令執(zhí)行后( A ) =00H ,影響 CY 位。說明: 單獨執(zhí)行INC 指令,只影響奇偶標志位P,不影響半進位標志位AC 和進位位CY 位。執(zhí)行ADD 指令后,將影響CY 、 AC 和 P 位。3-16 解答:'.本題涉及的是16 位數(shù)的減法運算,首先應(yīng)讓低8 位相減,然后讓高8 位帶著借位相減。注意:應(yīng)在低 8 位相減前將進位位CY 清空 0。CLRCMOVA, #56HSUBBA, #78HMOVR0,AMOVA, #23HSUBBA, #45HMOVR1,A3-17 解答:A( A) 23H ,(A) =03H42H ( 42
26、H )( A),( 42H ) =37HA( A)( R0),(A) =34HA( A ),( A) =CBH結(jié)果:( A ) =CBH3-18 解答:( 1)MOVDPTR,#1000HMOVXA, DPTRCPLAMOVXDPTR, A( 2)MOVR0 ,#60HMOVXA, R0ANLA, #3FHXRLA, #03HMOVXR0, A3-19 解答:DAA 指令的作用是對A 中剛進行的兩個BCD 碼的加法結(jié)果進行修正,即繼續(xù)使BCD 碼加法運算的結(jié)果保持為BCD 碼。使用時, DAA 指令只能使用在加法指令后,即ADD 指令和 ADDC 指令。3-20 解答:MOVDPTR,#100
27、0HMOVXA, DPTRMOVB, #10MULABMOV30H ,AMOV31H ,BMOVDPTR,#2000HMOVXA, DPTRMOVB, #32MULABADDA, 30H'.MOV30H ,AMOVA, BADDCA, 31HMOV31H ,A3-21 解答:MOVR7 ,#10MOVDPTR,#block1MOVR0 ,#block2LOOP:MOVXA, DPTRMOVR0, AINCDPTRINCR0DJNZR7 ,LOOP3-22 解答:MOVA, #01HLOOP:MOVP0 ,ARLALCALLDELAYSJMPLOOPDELAY :MOVR7,#00HDE
28、LAY1 : MOVR6,#00HDJNZR6,$DJNZR7,DELAY1RET3-23 解答:ORLC, 11HMOV11H ,CMOVC, P1.0ORLC, 10HANLC, 11HMOVP1.0 ,C3-24 解答:( 1)正確。( 2)錯誤。原因:清零指令只能用于累加器 ACC 和位操作,而本題中 E0H 只能是字節(jié)地址(位地址的范圍是 00H7FH ),所以該條指令錯誤。( 3)錯誤。原因: ACC 是直接字節(jié)地址,不能用于清零指令。( 4)正確。 ACC.0 是一個位,可以應(yīng)用到清零指令中。( 5)正確。( 6)錯誤。原因:取反指令只能用于累加器 ACC 和位操作,而本題中 E
29、0H 只能是字節(jié)地址(位地址的范圍是 00H7FH ),所以該條指令錯誤。'.( 7)錯誤。原因: ACC 是直接字節(jié)地址,不能用于取反指令。( 8)正確。 ACC.0 是一個位,可以應(yīng)用到取反指令中。3-25 解答:ANLA, BORLA, CMOVF, C3-26 解答:指令 LJMPaddr16 是長轉(zhuǎn)移指令,指令中提供了16 位目的地址,尋址范圍是 64KB 。指令 AJMPaddr11 是絕對轉(zhuǎn)移指令,指令中11 位目的地址,其中 a7a0 在第二字節(jié), a10a8 則占據(jù)第一字節(jié)的高3 位,尋址范圍是與PC 當前值(本指令所在地址 +本條指令所占用的字節(jié)數(shù)2)在同一個 2K
30、 的區(qū)域內(nèi)。3-27 解答:( 1)MOVP1 ,#0CAH; P1CAH, P1=CAH=11001010BMOVA, #56H; A 56H, A=56H=01010110BJBP1.2,L1;若 P1.2=1 ,則轉(zhuǎn)移至 L1JNBACC.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=01000011BJBACC.2 , L1;若 ACC.2=1 ,則轉(zhuǎn)移至 L1JBCACC.6 , L2;若 ACC.6=1 ,則轉(zhuǎn)移至 L2
31、 ,同時將 ACC.6清零L1 :L2 :執(zhí)行完本段程序后將轉(zhuǎn)移至L2 ,因為 ACC.2=0 , ACC.6=1 ,所以轉(zhuǎn)至 L2 ,并且將 ACC.6 清零。3-28 解答:( 1)MOVA, P1CPLAANLA, #0F0HSWAPAMOVP1 ,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
32、 章 匯編語言程序設(shè)計4-1 解答:ORG0100HMOVA, 21HADDA, 23HMOV25H ,AMOVA, 20HADDCA, 22HMOV24H ,ARET4-2 解答:ORG0200HMOVA, 51HMOVB, #20MULABMOV53H ,AMOV52H ,BMOVA, 50HMOVB, #3MULABADDA, 53HMOV53H ,AMOVA, BADDCA, 52HMOV52H ,ARET4-3 解答:'.開始XA 暫存YA<20?N2BYA<50?N5B1BA ×B AAFUNC 保存結(jié)果返回題圖 4-1習題 4-3 流程圖ORG030
33、0HMOVA, DATACJNEA, #20 , LOP1LOP1 :JCLOP3CJNEA, #50 , LOP2LOP2 :JCLOP4MOVB, #1LJMPLOP5LOP3 :MOVB, #2LJMPLOP5LOP4 :MOVB, #5LOP5 :MULABMOVFUNC,ARET4-4 解答:ORG0400HMOVA, mun+1JNBACC.7 , LOOPCLRCMOVA, num'.SUBBA #01HCPLAMOVnum AMOVA #num+1SUBBA #00HCPLAMOVnum+1 ALOOPRET4-5ORG0500HMOVDPTR #JPTABMOVA R
34、2RLAJMPA+DPTRJPTABAJMPKEY0AJMPKEY1AJMPKEY2AJMPKEY15KEY0KEY1KEY2KEY154-6ORG0600HMOVR0#40HMOVDPTR#2000HMOVR7#21HLOOPMOVAR0MOVXDPTRAINCR0INCDPTRDJNZR7LOOPRET4-7ORG0700HMOVDPTR#DATAMOVR7#10'.LOOP:MOVXA, DPTRORLA, #80HMOVXDPTR, AINCDPTRDJNZR7 ,LOOPRET4-8 解答:ORG0800HMOVDPTR,#3000HMOVR0,#30HMOVR7,#7LOO
35、P:MOVXA, DPTRMOVR0, AINCDPTRINCDPTRINCR0DJNZR7,LOOPRET4-9 解答:ORG0900HMOVDPTR,#1000HMOVR1,#30HMOVR7,#31HLOOP:MOVXA, DPTRMOVR1, ACLRAMOVXDPTR, AINCDPTRINCR1DJNZR7,LOOPRET4-10 解答:ORG0A00HMOVR1,#DAT1MOVDPTR,#DAT2MOVR6,#10HLOOP1:MOVA, R1CJNEA, #0DH ,LOOP2LJMPLOOP3LOOP2:MOVXDPTR, A'.INCR1INCDPTRDJNZR6
36、 ,LOOP1LOOP3:RET4-11 解答:ORG0B00HMOVDPTR,#3000HMOVR7 ,#100MOVone , #00HMOVtwo , #00HMOVthree , #00HLOP1 :MOVXA, DPTRJZLOP2JNBACC.7 , LOP3INCthreeLJMPLOP4LOP2 :INCtwoLJMPLOP4LOP3 :INConeLOP4 :INCDPTRDJNZR7 ,LOP1RET4-12 解答:ORG0C00HMOVR0 ,#50HMOVA, #00HMOVR7 ,#10LOP:ADDA, R0INCR0DJNZR7 ,LOPMOVB, #10DIVA
37、BMOV5AH,ARET4-13 解答:ORG0D00HMOVR0 ,#40HMOVA, R0MOVR7 ,#47LOOP:INCR0'.MOV30H , R0CJNEA, 30H , CHKCHK:JCLOOP1MOVA, R0LOOP1:DJNZR7 ,LOOPMOVMIN ,ARET4-14 解答:ORG0E00HSTART :MOVR0,#40HMOVR7,#19CLR00HLOOP:MOVA, R0MOV30H ,AINCR0MOV31H , R0CLRCSUBBA, R0JNCNEXTMOVR0, 30HDECR0MOVR0, 31HINCR0SETB00HNEXT:DJN
38、ZR7,LOOPJB00H , STARTMOVR0,#40HMOVDPTR,#2000HMOVR7,#20LOP1 :MOVA, R0MOVXDPTR, AINCR0INCDPTRDJNZR7,LOP1RET4-15 解答:ORG0F00HMOVDPTR,#2000HMOVR7 ,#100LOOP1:MOVXA, DPTR'.CJNEA, #44H ,LOOP2MOV30H , DPLMOV31H , DPHMOVDPTR,#20A0HMOVA, 30HMOVXDPTR, AINCDPTRMOVA, 31HMOVXDPTR, ALJMPLOOP3LOOP2:INCDPTRDJNZR7
39、,LOOP1LOOP3:RET4-16 解答:ORG1000HMOVR0,#30HMOVR1,#50HMOVR7,#20LOP1 :MOVA, R0CJNEA, #0AH ,LOP2LOP2 :JNCLOP3ADDA, #30HLJMPLOP4LOP3 :ADDA, #37HLOP4 :MOVR1, AINCR0INCR1DJNZR7,LOP1RET4-17 解答:ORG1100HMOVR0,#40HMOVR1,#60HMOVR7,#NLOP1 :MOVA, R0CJNEA, #41H ,LOP2LOP2 :JNCLOP3CLRCSUBBA, #30HLJMPLOP4'.LOP3 :C
40、LRCSUBBA, #37HLOP4 :MOVR1, AINCR0INCR1DJNZR7 ,LOP1RET4-18 解答:ORG1200HMOVDPTR,#2000HMOVR0,#30HMOVR7,#5LOP1 :MOVXA, DPTRANLA, #0FHADDA, #30HMOVR0, AINCR0MOVXA, DPTRANLA, #0F0HSWAPAADDA, #30HMOVR0, AINCR0INCDPTRDJNZR7,LOP1MOVDPTR,#2005HMOVR0,#30HMOVR7,#10LOP2 :MOVA, R0MOVXDPTR, AINCR0INCDPTRDJNZR7,LOP2
41、RET4-19 解答:ORG1300HMOVDPTR,#2000HMOVR0 ,#30HMOVR7 ,#10LOP1 :MOVXA, DPTR'.CLRCSUBBA, #30HMOVR0, AINCDPTRMOVXA, DPTRCLRCSUBBA, #30HSWAPAORLA, R0MOVR0, AINCDPTRINCR0DJNZR7 ,LOP1MOVDPTR,#3000HMOVR0 ,#30HMOVR7 ,#10LOP2 :MOVA, R0MOVXDPTR, AINCR0INCDPTRDJNZR7 ,LOP2RET4-20 解答:ORG1400HMOVA, 40HMOVB, AMUL
42、ABMOV31H ,AMOVA, 30HMOVB, AMULABCLRCSUBBA, 31HMOV30H ,ARET4-21 解答:ORG1500HMOVA, #80HLOOP:MOVP1 ,ALCALLDEL'.RRASJMPLOOPDEL: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ù)器。分別有兩種工作方式:定時器方式和計數(shù)器方式。由TMOD (定時器模式控制寄存器)中的控制位C / T 進行選擇。定時器方式的脈沖來自于內(nèi)部時鐘脈沖,每個機器周期是計數(shù)器的值增1;計數(shù)器方式的脈沖來自于外部輸入引腳T0( P3.4)或 T1( P3.5)。5-2 解答:51 系列單片機的定時 /計數(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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度藥店藥品零售連鎖品牌授權(quán)及供應(yīng)鏈合同
- 二零二五年度涉及知識產(chǎn)權(quán)的方協(xié)議解約及糾紛解決合同
- 不動產(chǎn)買賣合同書及補充協(xié)議條款
- 英文短句記憶技巧教案
- 海底兩萬里觀后感體會
- 農(nóng)業(yè)經(jīng)濟政策解讀方案
- 傳媒廣告行業(yè)廣告效果數(shù)據(jù)分析與優(yōu)化方案
- 互聯(lián)網(wǎng)+健康產(chǎn)業(yè)服務(wù)協(xié)議
- 倉庫庫房租賃合同書
- 童話森林的故事解讀
- 2025屆威海市高三語文上學期期末考試卷附答案解析
- 新能源汽車充電設(shè)施建設(shè)規(guī)劃與管理計劃
- 《污水中微塑料的測定 傅里葉變換顯微紅外光譜法》
- 【MOOC】跨文化思想交流英語-南京理工大學 中國大學慕課MOOC答案
- 部編人教版五年級下冊小學數(shù)學全冊教案
- 2024年世界職業(yè)院校技能大賽高職組“聲樂、器樂表演組”賽項參考試題庫(含答案)
- 2024年共青團入團考試題庫及答案
- 2024解析:第十二章機械效率-講核心(原卷版)
- 2023年國家公務(wù)員錄用考試《申論》真題(副省卷)及答案解析
- 2023年海南省公務(wù)員錄用考試《行測》真題卷及答案解析
- 2024-2030年中國語言培訓行業(yè)競爭分析及發(fā)展策略建議報告版
評論
0/150
提交評論