




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、2022-5-271第第3 3章章 80C5180C51的指令系統(tǒng)的指令系統(tǒng)匯編語(yǔ)言概述匯編語(yǔ)言概述3.180C51的的指令系統(tǒng)指令系統(tǒng)3.2數(shù)據(jù)傳送數(shù)據(jù)傳送指令指令 (29條)條)算數(shù)運(yùn)算算數(shù)運(yùn)算指令指令 (24條)條)邏輯運(yùn)算邏輯運(yùn)算與與循環(huán)循環(huán)類(lèi)指令(類(lèi)指令(24條)條)控制轉(zhuǎn)移控制轉(zhuǎn)移類(lèi)指令類(lèi)指令 (17條)條)位操作位操作類(lèi)指令類(lèi)指令 (17條)條)偽操作類(lèi)指令偽操作類(lèi)指令80C51匯編語(yǔ)言的編程方法匯編語(yǔ)言的編程方法3.32022-5-2723.1 匯編語(yǔ)言概述匯編語(yǔ)言概述3.1.1 3.1.1 機(jī)器指令的字節(jié)編碼形式機(jī)器指令的字節(jié)編碼形式 單字節(jié)指令(單字節(jié)指令(4949條)條)
2、機(jī)器指令機(jī)器指令:計(jì)算機(jī)能直接識(shí)別和執(zhí)行的指令。由操作碼和操:計(jì)算機(jī)能直接識(shí)別和執(zhí)行的指令。由操作碼和操作數(shù)組成。操作碼規(guī)定指令執(zhí)行的操作功能,操作數(shù)是指參作數(shù)組成。操作碼規(guī)定指令執(zhí)行的操作功能,操作數(shù)是指參與操作的數(shù)據(jù)。與操作的數(shù)據(jù)。 機(jī)器指令的字節(jié)編碼形式就是指機(jī)器指令以什么樣的二進(jìn)機(jī)器指令的字節(jié)編碼形式就是指機(jī)器指令以什么樣的二進(jìn)制碼形式存儲(chǔ)在制碼形式存儲(chǔ)在ROMROM中。中。 雙字節(jié)指令(雙字節(jié)指令(4545條)條) 三字節(jié)指令(三字節(jié)指令(1717條)條)2022-5-273 8 8位編碼僅為操作碼位編碼僅為操作碼 單字節(jié)指令(單字節(jié)指令(4949條)條)位號(hào)位號(hào)7 6 5 4 3
3、2 1 0字節(jié)字節(jié)opcode如:如:INC A INC A 編碼為:編碼為:0 0 0 0 0 1 0 0即:即:04H04H 8 8位編碼含操作碼和寄存器編碼位編碼含操作碼和寄存器編碼位號(hào)位號(hào)7 6 5 4 3 2 1 0 字節(jié)字節(jié)opcoder r r如:如:MOV AMOV A,R0 R0 編碼為編碼為:1 1 1 0 1 0 0 0即:即:E8HE8H2022-5-274 雙字節(jié)指令(雙字節(jié)指令(4545條)條)位號(hào)位號(hào)7 6 5 4 3 2 1 0字節(jié)字節(jié)opcodedata或或direct 三字節(jié)指令(三字節(jié)指令(1717條)條)位號(hào)位號(hào)7 6 5 4 3 2 1 0字節(jié)字節(jié)op
4、codedata或或directdata或或direct如:如:MOV AMOV A,#50H #50H 編碼為編碼為:0 1 1 1 0 1 0 00 1 0 1 0 0 0 0即:即:74H74H 50H 50H如:如:MOV 20HMOV 20H,#50H #50H 編碼為編碼為:0 1 1 1 0 1 0 10 0 1 0 0 0 0 00 1 0 1 0 0 0 0即:即:75H75H 20H 20H 50H 50H2022-5-275注意:注意:操作碼不能缺少,表示指令碼的功能操作碼不能缺少,表示指令碼的功能操作數(shù)個(gè)數(shù)可為:操作數(shù)個(gè)數(shù)可為:1 1、2 2、3 3個(gè)個(gè)2 2個(gè)操作數(shù)的
5、指令,目的操作數(shù)在左邊個(gè)操作數(shù)的指令,目的操作數(shù)在左邊格式中的標(biāo)點(diǎn)符號(hào)都是英文符號(hào)格式中的標(biāo)點(diǎn)符號(hào)都是英文符號(hào)一般格式一般格式3.1.2 3.1.2 符號(hào)指令的書(shū)寫(xiě)格式符號(hào)指令的書(shū)寫(xiě)格式標(biāo)號(hào): 操作碼操作碼 操作數(shù)1, 操作數(shù)2, 操作數(shù)3, ;注釋2022-5-276非數(shù)字字符開(kāi)頭,后跟字母、數(shù)字、非數(shù)字字符開(kāi)頭,后跟字母、數(shù)字、“- -”、“?”等等不能用已定義的保留字(指令助記符、偽指令等)不能用已定義的保留字(指令助記符、偽指令等)后跟英文冒號(hào)后跟英文冒號(hào)“: :” 標(biāo)號(hào)(即符號(hào)地址)標(biāo)號(hào)(即符號(hào)地址)數(shù)據(jù):二進(jìn)制(數(shù)據(jù):二進(jìn)制(B B) 十進(jìn)制(十進(jìn)制(D D或省略或省略D D) 十
6、六進(jìn)制(十六進(jìn)制(H H),注意),注意A AFF開(kāi)頭時(shí)要加開(kāi)頭時(shí)要加“ “0 0” ” ASCII ASCII碼,如碼,如 A A,12451245 操作數(shù)操作數(shù) 注釋注釋英文分號(hào)英文分號(hào)“; ;”開(kāi)頭開(kāi)頭2022-5-277 指令中出現(xiàn)的描述符號(hào)的含義指令中出現(xiàn)的描述符號(hào)的含義RnRn(n=0n=07 7)- -當(dāng)前工作寄存器組中的寄存器當(dāng)前工作寄存器組中的寄存器R0R0R7R7之一之一v RiRi(i=0,1i=0,1)- -當(dāng)前工作寄存器組中的寄存器當(dāng)前工作寄存器組中的寄存器R0R0或或R1R1v - -間址寄存器前綴,表示后面寄存器中數(shù)據(jù)為地址間址寄存器前綴,表示后面寄存器中數(shù)據(jù)為地
7、址v #data -8#data -8位立即數(shù)位立即數(shù)v #data16-16#data16-16位立即數(shù)位立即數(shù)v direct-direct-片內(nèi)低片內(nèi)低128128個(gè)個(gè)RAMRAM單元地址及單元地址及SFRSFR名稱(chēng)名稱(chēng)v addr11-addr11-表示表示2KB2KB范圍內(nèi)范圍內(nèi)1111位目的地址位目的地址v addr16-addr16-表示表示64KB64KB范圍內(nèi)范圍內(nèi)1616位目的地址位目的地址v rel-8rel-8位地址偏移量,范圍:位地址偏移量,范圍:128128127127v bit-bit-片內(nèi)片內(nèi)RAMRAM位地址、位地址、SFRSFR的位地址或名稱(chēng)的位地址或名稱(chēng)v
8、 $ -$ -當(dāng)前指令的首地址當(dāng)前指令的首地址v ()-表示表示 地址單元或寄存器中的內(nèi)容地址單元或寄存器中的內(nèi)容v / -/ -位操作數(shù)的取反操作前綴位操作數(shù)的取反操作前綴2022-5-27880C5180C51單片機(jī)有單片機(jī)有7 7種種尋址方式尋址方式尋址方式:尋找尋址方式:尋找操作數(shù)操作數(shù)操作所在的位置(地址),把操作操作所在的位置(地址),把操作數(shù)取出來(lái)的方法。數(shù)取出來(lái)的方法。1、寄存器尋址、寄存器尋址2、直接尋址、直接尋址3、寄存器間接尋址、寄存器間接尋址4、立即尋址、立即尋址5、相對(duì)尋址、相對(duì)尋址 6、變址尋址、變址尋址7、位尋址、位尋址3.1.2 80C513.1.2 80C51
9、的尋址方式的尋址方式2022-5-2791 1 寄存器尋址寄存器尋址操作數(shù)存放在工作寄存器中,指令中直接給出工操作數(shù)存放在工作寄存器中,指令中直接給出工作寄存器名稱(chēng)的尋址方式。作寄存器名稱(chēng)的尋址方式。操作數(shù)表示符號(hào)操作數(shù)表示符號(hào) R0R0、R1R1、R7R7【例例】若(若(R0)=30H, 執(zhí)行MOV A,R0后,(A)=?2022-5-27102 2 直接尋址直接尋址在這種尋址方式中,操作數(shù)項(xiàng)給出的是參加運(yùn)算在這種尋址方式中,操作數(shù)項(xiàng)給出的是參加運(yùn)算的操作數(shù)的地址。的操作數(shù)的地址。操作數(shù)表示符號(hào)操作數(shù)表示符號(hào) directdirect【例例】若(若(50H50H)=3AH =3AH , 執(zhí)行
10、MOV A,50H后,(A)=?2022-5-27113 3 立即尋址立即尋址指令碼中直接給出操作數(shù)的尋址方式。指令碼中直接給出操作數(shù)的尋址方式。立即數(shù)前必須加立即數(shù)前必須加“# #”標(biāo)記。指令中的立即數(shù)有標(biāo)記。指令中的立即數(shù)有8 8位立即數(shù)和位立即數(shù)和1616位立即數(shù)。位立即數(shù)。注意區(qū)別這個(gè)指令:MOV A, 50H通用符號(hào)通用符號(hào): :#data (8位),位),#data16( (16位)位)【例例】執(zhí)行指令執(zhí)行指令 MOV AMOV A,#50H#50H和和MOV DPTRMOV DPTR,#3050H #3050H ,A A值值分別是多少?分別是多少? 小結(jié):立即數(shù)與地址的區(qū)別是什么
11、?2022-5-27124 4 寄存器間接尋址寄存器間接尋址在這種尋址方式中,操作數(shù)項(xiàng)中的工作寄存器中存放的不是真正在這種尋址方式中,操作數(shù)項(xiàng)中的工作寄存器中存放的不是真正的數(shù)據(jù),而是的數(shù)據(jù),而是操作數(shù)的地址操作數(shù)的地址。間接尋址要在工作寄存器前加。間接尋址要在工作寄存器前加 表示間表示間址操作。址操作。符號(hào)符號(hào) R0和和R1【例例】若(若(R0)=30H,(30H)=5AH 執(zhí)行MOV A,R0后,(A)=? 【例例】若(若(R1)=4CH,(A)=26H 執(zhí)行MOV R1,A后,(R1)=?,(4CH)=?2022-5-27135 5 變址尋址變址尋址(基址寄存器變址寄存器的間接尋址)【例
12、例】(A A)= 05H= 05H;(DPTRDPTR)= 2400H= 2400H 執(zhí)行執(zhí)行MOVC A,A+DPTRMOVC A,A+DPTR后后結(jié)果:(結(jié)果:(A A)= =? 以某個(gè)基址寄存器的內(nèi)容為基礎(chǔ),在這個(gè)基礎(chǔ)上再加上地址偏移量,形成真正的操作數(shù)地址?;芳拇嫫髦荒苁荄PTR或PC,變址寄存器只能是累加器A。采用變址尋址的指令有兩條:MOVC A, A+DPTR (最常用) MOVC A, A+PC2022-5-27146 6 相對(duì)尋址相對(duì)尋址相對(duì)尋址主要針對(duì)將程序轉(zhuǎn)移到相對(duì)地址的跳轉(zhuǎn)指令。相對(duì)尋址主要針對(duì)將程序轉(zhuǎn)移到相對(duì)地址的跳轉(zhuǎn)指令。以以當(dāng)前當(dāng)前PCPC值值作為基址,以作為基
13、址,以relrel作為變址,兩者之作為變址,兩者之和作為新的地址。和作為新的地址。【例例】若若SJMP 75HSJMP 75H存放在存放在1000H1000H地址中,執(zhí)行指令地址中,執(zhí)行指令SJMP 75HSJMP 75H后,后,PCPC值是多少?值是多少? 通過(guò)查詢(xún)指令表,指令通過(guò)查詢(xún)指令表,指令SJMP 75HSJMP 75H的二進(jìn)制碼為的二進(jìn)制碼為80H,75H80H,75H,為兩字節(jié)指令,因此新的為兩字節(jié)指令,因此新的PCPC值為值為1000H+2H+75H=1077H1000H+2H+75H=1077H2022-5-27157 7 位尋址位尋址【例例】位地址位地址00H00H內(nèi)容為內(nèi)
14、容為1 1,MOV CMOV C,00H 00H 執(zhí)行后,位地址執(zhí)行后,位地址PSW.7PSW.7的內(nèi)容為的內(nèi)容為1 1。 對(duì)位地址中的內(nèi)容進(jìn)行位操作的尋址方式。注意:與MOV A,00H的區(qū)別。2022-5-2716分類(lèi)分類(lèi)數(shù)據(jù)傳送類(lèi)指令數(shù)據(jù)傳送類(lèi)指令 29數(shù)學(xué)運(yùn)算類(lèi)指令數(shù)學(xué)運(yùn)算類(lèi)指令 24邏輯運(yùn)算類(lèi)指令邏輯運(yùn)算類(lèi)指令 24控制轉(zhuǎn)移類(lèi)指令控制轉(zhuǎn)移類(lèi)指令 1717位操作指令位操作指令 1717共有共有111111條匯編指令條匯編指令3.2 8051單片機(jī)指令系統(tǒng)單片機(jī)指令系統(tǒng)2022-5-2717數(shù)據(jù)傳送類(lèi)指令數(shù)據(jù)傳送類(lèi)指令 2929條條2022-5-2718數(shù)學(xué)運(yùn)算類(lèi)指令數(shù)學(xué)運(yùn)算類(lèi)指令 24
15、24條條2022-5-2719邏輯運(yùn)算類(lèi)指令邏輯運(yùn)算類(lèi)指令 2424條條2022-5-2720控制轉(zhuǎn)移類(lèi)指令控制轉(zhuǎn)移類(lèi)指令 1717條條2022-5-2721位操作指令位操作指令 1717條條2022-5-2722經(jīng)常使用的指令經(jīng)常使用的指令 2525條條2022-5-2723主要指令精講主要指令精講 傳送類(lèi)指令有兩大類(lèi)傳送類(lèi)指令有兩大類(lèi) 一般傳送一般傳送 MOV MOV (最重要的指令)(最重要的指令) 特殊傳送,如:特殊傳送,如: MOVC MOVC (較為重要的指令)(較為重要的指令) MOVX MOVX PUSH PUSH、POPPOP XCH XCH、XCHDXCHD SWAP SW
16、AP 3.2.1 3.2.1 數(shù)據(jù)傳送類(lèi)指令(數(shù)據(jù)傳送類(lèi)指令(2929條)條)2022-5-2724數(shù)據(jù)傳送類(lèi)指令數(shù)據(jù)傳送類(lèi)指令 2929條條2022-5-2725一般傳送指令通用格式: MOV 目的操作數(shù),源操作數(shù)含義:將 源操作數(shù) 傳送到 目的操作數(shù) 中。類(lèi)似于C語(yǔ)言的賦值語(yǔ)句。AARnRnMOV directdirectRiRi#data,MOV DPTR,#data16; DPTR data16一般傳送指令一般傳送指令注意:工作寄存器不能同時(shí)出現(xiàn)在源操作數(shù)和目的操作數(shù)中1616位傳送指令位傳送指令2022-5-2726【例3-13】執(zhí)行指令 MOV DPTR,#1234H 后 (DPT
17、R)=?,(DPH)=?,(DPL)=?【例例3-103-10】若若(R1)= 20H,(20H)= 55H。執(zhí)行指令 MOV A,R1 后,(A)= ??!纠?-9】執(zhí)行指令 MOV R6,#50H 后,(R6)= ?【例3-11】若(R1)=50H,(50H)=18H,執(zhí)行指令 MOV 40H,R1 后,(40H)=?【例3-12】若(R1)=30H,(A)=20H,執(zhí)行指令 MOV R1,A 后,(30H)=? 思考:將R5中數(shù)送到R4中,如何處理?2022-5-27273.3.2 3.3.2 特殊傳送指令特殊傳送指令 以以DPTRDPTR內(nèi)容為基址內(nèi)容為基址(較重要)(較重要)讀讀RO
18、MROM中數(shù)據(jù),必須使用指令中數(shù)據(jù),必須使用指令MOVCMOVCMOVC AMOVC A,A+DPTRA+DPTR;A A (A A)+ +(DPTRDPTR) 以以PCPC內(nèi)容為基址內(nèi)容為基址MOVC AMOVC A,A+PC A+PC ;A A (A A)+ +(PCPC)由于由于ROMROM只能讀不能寫(xiě),因此只能讀不能寫(xiě),因此ROMROM中的數(shù)據(jù)傳送都是單向的。中的數(shù)據(jù)傳送都是單向的。 【例例3-143-14】若若(DPTR)= 3000H,(A)= 20H;ROM中的(3020H)=78H, (3021H)=26H,執(zhí)行指令 MOVC A,A+DPTR 后,(A)= ??!纠?-15
19、3-15】若若(DPTR)= 3016H,(A)= 25H;ROM中的(303BH)=22H, (3041H)=35H,執(zhí)行指令 MOVC A,A+DPTR 后,(A)= ?。2022-5-2728 讀讀片外片外RAMRAM讀寫(xiě)片外讀寫(xiě)片外RAMRAM數(shù)據(jù)的指令數(shù)據(jù)的指令MOVXMOVX片外片外RAMRAM中數(shù)據(jù)傳送都是通過(guò)中數(shù)據(jù)傳送都是通過(guò)間接尋址間接尋址的方式來(lái)實(shí)現(xiàn)的的方式來(lái)實(shí)現(xiàn)的MOVX AMOVX A,DPTR DPTR ;A A (DPTRDPTR)MOVX AMOVX A,Ri Ri ;A A (RiRi) 寫(xiě)寫(xiě)片外片外RAMRAMMOVX DPTRMOVX DPTR,A A ;(
20、;(DPTRDPTR)A AMOVX RiMOVX Ri,A A ;(;(RiRi)A A2022-5-2729注意:注意:(1 1)地址寄存器只能使用)地址寄存器只能使用DPTRDPTR和和RiRi,其中,其中DPTRDPTR是是16 16 位,而位,而RiRi是是8 8位的;位的;(2 2)與片外)與片外RAMRAM傳送數(shù)據(jù)只能通過(guò)累加器傳送數(shù)據(jù)只能通過(guò)累加器A A來(lái)實(shí)現(xiàn);來(lái)實(shí)現(xiàn);(3 3)與片外)與片外RAMRAM傳送數(shù)據(jù)只能使用傳送數(shù)據(jù)只能使用MOVXMOVX指令。指令?!纠?-153-15】若若(DPTR)= 3000H,(3000H)= 20H;執(zhí)行指令MOVX A,DPTR 后
21、,(A)= ?。思考:MOV、MOVC、MOVX指令的區(qū)別?2022-5-2730 入入棧指令棧指令PUSHPUSH堆棧操作指令堆棧操作指令PUSHPUSH和和POPPOP堆棧堆棧是一片存儲(chǔ)區(qū),遵循是一片存儲(chǔ)區(qū),遵循“后進(jìn)先出后進(jìn)先出”原則,棧頂由原則,棧頂由SPSP指指示。主要用于系統(tǒng)發(fā)生中斷時(shí)保存中斷現(xiàn)場(chǎng)信息。示。主要用于系統(tǒng)發(fā)生中斷時(shí)保存中斷現(xiàn)場(chǎng)信息。PUSH direct PUSH direct ;SPSP(SPSP)1 1,(,(SPSP)(directdirect) 出出棧指令棧指令POPPOPPOP direct POP direct ;(;(directdirect)(SPSP
22、),),SP SP (SPSP)1 1 2022-5-2731(40H)=23H,(50H)=45H MOV SP,#6FHPUSH 40HPUSH 50HPOP 40HPOP 50H;(SP)=6FH;(SP)=70H,(70H)=(40H)= 23H結(jié)論:地址40H和50H中數(shù)據(jù)交換,這種情況一般不允許。;(SP)=71H,(71H)=(50H)= 45H;(40H)=(71H)=45H,(SP)= 70H;(50H)=(70H)=23H,(SP)= 6FH2022-5-2732(40H)=23H,(50H)=45H MOV SP,#6FHPUSH 40HPUSH 50HPOP 50HPO
23、P 40H;(SP)=6FH;(SP)=70H,(70H)=(40H)= 23H結(jié)論:地址40H和50H中數(shù)據(jù)入棧前和出棧后數(shù)據(jù)保持 一致,遵循“先進(jìn)后出”的原則。這是正常使用。;(SP)=71H,(71H)=(50H)= 45H;(40H)=(70H)=23H,(SP)= 6FH;(50H)=(71H)=45H,(SP)= 70H2022-5-2733 字節(jié)字節(jié)交換指令交換指令XCHXCH數(shù)據(jù)交換指令數(shù)據(jù)交換指令XCHXCH、XCHDXCHD和和SWAPSWAP數(shù)據(jù)交換屬于同時(shí)進(jìn)行的雙向傳送數(shù)據(jù)交換屬于同時(shí)進(jìn)行的雙向傳送 )(;)(;)(;,RiA RidirectA direct RnA
24、Rn A XCH【例例3-203-20】若(若(R0)=80H,(A)=20H。執(zhí)行指令 XCH A,R0 后,(A)=?,(R0)=?。 2022-5-2734 半字節(jié)半字節(jié)交換指令交換指令XCHDXCHD【例例3-213-21】若(若(R0R0)=30H=30H,(,(30H30H)=67H=67H, (A A)=20H=20H。執(zhí)。執(zhí)行指令行指令XCHD AXCHD A,R0 R0 指令后,(指令后,(A A)=?=?,(,(30H30H)=?=? )();()()();(,ACC.0ACC.3ACC.4ACC.7 A SWAPACC.0ACC.30 .Ri3 .Ri Ri A XCHD
25、XCHDXCHD是間址操作數(shù)的低半字節(jié)與是間址操作數(shù)的低半字節(jié)與A A的低半字節(jié)互換。的低半字節(jié)互換。SWAPSWAP是累加器的高低是累加器的高低4 4位互換位互換【例例3-223-22】若(若(A A)30H30H,執(zhí)行指令,執(zhí)行指令SWAP ASWAP A后,(后,(A A)=?=?。 2022-5-27353.2.2 3.2.2 算數(shù)運(yùn)算類(lèi)指令(算數(shù)運(yùn)算類(lèi)指令(2424條)條)算數(shù)算數(shù)運(yùn)算結(jié)果運(yùn)算結(jié)果要要影響影響PSWPSW中標(biāo)志位中標(biāo)志位 CYCY為為1 1,無(wú)符號(hào)數(shù)無(wú)符號(hào)數(shù)(字節(jié))加減發(fā)生(字節(jié))加減發(fā)生進(jìn)位進(jìn)位或或借位借位 OVOV為為1 1,有符號(hào)數(shù)有符號(hào)數(shù)(字節(jié))加減發(fā)生(字節(jié)
26、)加減發(fā)生溢出溢出錯(cuò)誤錯(cuò)誤 ACAC為為1 1,低半字節(jié)出現(xiàn)進(jìn)位或借位低半字節(jié)出現(xiàn)進(jìn)位或借位 P P為為1 1,存于累加器,存于累加器A A中操作結(jié)果的中操作結(jié)果的“1 1”的個(gè)數(shù)的個(gè)數(shù)為為奇數(shù)奇數(shù) 標(biāo)志位意義標(biāo)志位意義2022-5-2736算數(shù)運(yùn)算影響標(biāo)志位示例算數(shù)運(yùn)算影響標(biāo)志位示例【例例】有有2 2個(gè)參與相加的機(jī)器數(shù),一個(gè)是個(gè)參與相加的機(jī)器數(shù),一個(gè)是84H84H,另一個(gè)是,另一個(gè)是8DH8DH。試分析運(yùn)算過(guò)程及其對(duì)狀態(tài)標(biāo)志的影響。試分析運(yùn)算過(guò)程及其對(duì)狀態(tài)標(biāo)志的影響。問(wèn)題問(wèn)題:CYCY為?;為?;ACAC為?;為?;OVOV為?;為?;P P為?為? 結(jié)果結(jié)果:CYCY為為1 1;ACAC為
27、為1 1 ;OVOV為為1 1 ;P P為為0 0 OV = D7D6OV = D7D62022-5-2737數(shù)學(xué)運(yùn)算類(lèi)指令數(shù)學(xué)運(yùn)算類(lèi)指令 2424條條2022-5-2738不帶進(jìn)位加法不帶進(jìn)位加法ADDADD、帶進(jìn)位加法、帶進(jìn)位加法ADDCADDC、帶借位減法、帶借位減法SUBBSUBBRnADDdirectADDC A RiSUBB#data,加加1 1、減、減1 1指令指令A(yù)R nIN C dirD PectD EC RTiR注意:沒(méi)有DEC DPTR指令。思考:DPTR能不能實(shí)現(xiàn)自減呢?2022-5-2739乘法和除法指令乘法和除法指令MUL AB MUL AB ;B B中為積的中為積
28、的高高8 8位位,A A中為積的中為積的低低8 8位位 ;CYCY總是被清總是被清0 0,OV=1OV=1表示積大于表示積大于FFHFFH【例例3-283-28】若(若(A A)= 50H= 50H,(,(B B)=A0H=A0H,執(zhí)行指令,執(zhí)行指令MUL ABMUL AB后,后,(A)=00H, (B)=32H, (OV)=1(A)=00H, (B)=32H, (OV)=1。DIV AB DIV AB ;A A中為商的中為商的整數(shù)整數(shù)部分,部分,B B中為中為余數(shù)余數(shù) ;CYCY總是被清總是被清0 0;OV=1OV=1表示除數(shù)為表示除數(shù)為0 0 【例例3-293-29】若(若(A A)= F
29、BH(251)= FBH(251),(,(B B)=12H(18)=12H(18),執(zhí)行指,執(zhí)行指令令DIV ABDIV AB后,后,(A)=0DH, (B)=11H, (OV)=0(A)=0DH, (B)=11H, (OV)=0。251/18251/181313余余1717,除數(shù)不為,除數(shù)不為0 02022-5-2740十進(jìn)制調(diào)整指令(十進(jìn)制調(diào)整指令(基本不用基本不用)DA A DA A ;調(diào)整;調(diào)整A A的內(nèi)容為正確的的內(nèi)容為正確的BCDBCD碼碼 兩個(gè)壓縮的兩個(gè)壓縮的BCDBCD碼按二進(jìn)制相加后,必須經(jīng)過(guò)調(diào)整方能碼按二進(jìn)制相加后,必須經(jīng)過(guò)調(diào)整方能得到正確的和。得到正確的和。 當(dāng)當(dāng)A A中
30、低中低4 4位出現(xiàn)了非位出現(xiàn)了非BCDBCD碼(碼(1010101011111111)或低)或低4 4位位的進(jìn)位的進(jìn)位AC=1AC=1,則應(yīng)在低,則應(yīng)在低4 4位加位加6 6調(diào)整。調(diào)整。 當(dāng)當(dāng)A A中高中高4 4位出現(xiàn)了非位出現(xiàn)了非BCDBCD碼(碼(1010101011111111)或高)或高4 4位位的進(jìn)位的進(jìn)位CY=1CY=1,則應(yīng)在高,則應(yīng)在高4 4位加位加6 6調(diào)整。調(diào)整。 執(zhí)行十進(jìn)制調(diào)整指令后,執(zhí)行十進(jìn)制調(diào)整指令后,PSWPSW中的中的CYCY表示結(jié)果的百位值表示結(jié)果的百位值 2022-5-2741【例例3-243-24】若(若(A A)0110 1001B0110 1001B,表
31、示的,表示的BCDBCD碼為碼為 BCD69)(R2R2)0101 1000B0101 1000B,表示的,表示的BCDBCD碼為碼為 BCD58)(,執(zhí)行指令:,執(zhí)行指令: ADD A,R2DA A(A A)0010 0111B0010 0111B,即,即 BCD27)(且(且(CYCY)1 1,即正確的結(jié)果為:,即正確的結(jié)果為:127127 2022-5-27423.2.3 3.2.3 邏輯運(yùn)算與循環(huán)移位類(lèi)指令(邏輯運(yùn)算與循環(huán)移位類(lèi)指令(2424條)條)2022-5-27433.2.3 3.2.3 邏輯運(yùn)算與循環(huán)移位類(lèi)指令(邏輯運(yùn)算與循環(huán)移位類(lèi)指令(2424條)條)邏輯與、邏輯或、邏輯異或
32、邏輯與、邏輯或、邏輯異或 邏輯運(yùn)算:與、或、異或、清邏輯運(yùn)算:與、或、異或、清0 0和取反和取反 循環(huán)移位:左、右移,帶進(jìn)位位左、右移循環(huán)移位:左、右移,帶進(jìn)位位左、右移ANLAORL direct #dataXRL,R nA N LdirectO R L A R iX R L#data,用的較多2022-5-2744【例例】(A A)=C3H=C3H,(,(R0R0)=55H=55H,執(zhí)行指令,執(zhí)行指令 ORL AORL A,R0 R0 后,(后,(A A)=D7H =D7H 或操作常用于對(duì)某些指定位進(jìn)行或操作常用于對(duì)某些指定位進(jìn)行“置置1 1”, ,同時(shí)同時(shí)“保留保留”其他位不變其他位不變
33、 【例例】(A A)=C3H=C3H,(,(R0R0)=AAH=AAH,執(zhí)行指令,執(zhí)行指令 XRL AXRL A,R0 R0 后,(后,(A A)=69H =69H 異或操作常用于對(duì)某些指定位進(jìn)行異或操作常用于對(duì)某些指定位進(jìn)行“取反取反”, ,同時(shí)同時(shí)“保留保留”其他位不變其他位不變 【例例】(A A)=C3H=C3H,(,(R0R0)=AAH=AAH,執(zhí)行指令,執(zhí)行指令 ANL AANL A,R0 R0 后,(后,(A A)=82H =82H 與操作常用于對(duì)某些指定位進(jìn)行與操作常用于對(duì)某些指定位進(jìn)行“清清0 0”, ,同時(shí)同時(shí)“保留保留”其他位不變其他位不變 2022-5-2745邏輯清邏輯
34、清0 0和取反和取反A0A;A;A CPLCLRCLR ACLR A指令與指令與MOV A,#00HMOV A,#00H功能相同,只是用功能相同,只是用MOVMOV指令時(shí)要多占指令時(shí)要多占用用1 1字節(jié)空間字節(jié)空間 2022-5-2746716007771600716007771600; (), ()R R; (), (), ()R R C A ;(),()R L;(),(),()R LCAAAAC YAAAAC YAAAAC YAAAAC Y累加器循環(huán)移位累加器循環(huán)移位2022-5-2747【例例3-373-37】若(若(A A)= C5H= C5H,執(zhí)行指令,執(zhí)行指令RL ARL A后,后
35、,(A)=8BH(A)=8BH?!纠?-383-38】若(若(A A)= 45H= 45H,(CY)=1, (CY)=1, 執(zhí)行指令執(zhí)行指令RLC ARLC A后,后,(A)=8BH,(CY)=0(A)=8BH,(CY)=0。【例例3-393-39】若(若(A A)= C5H= C5H,執(zhí)行指令,執(zhí)行指令RR ARR A后,后,(A)=E2H(A)=E2H?!纠?-403-40】若(若(A A)= C5H= C5H,(CY)=1, (CY)=1, 執(zhí)行指令執(zhí)行指令RRC ARRC A后,后,(A)=E2H,(CY)=1(A)=E2H,(CY)=1。2022-5-27483.2.4 3.2.
36、4 控制轉(zhuǎn)移類(lèi)指令(控制轉(zhuǎn)移類(lèi)指令(1717條)條)2022-5-27493.2.4 3.2.4 控制轉(zhuǎn)移類(lèi)指令(控制轉(zhuǎn)移類(lèi)指令(1717條)條)1 1 無(wú)條件轉(zhuǎn)移無(wú)條件轉(zhuǎn)移AJMP addr11 AJMP addr11 ;PC PC (PCPC)+ 2+ 2,PC10PC100 addr11 0 addr11 LJMP addr16 LJMP addr16 ;PC addr16 (PC addr16 (用的最多用的最多)SJMP rel SJMP rel ;PC PC (PCPC)+ 2+ 2,PC PC (PCPC)+ rel + rel AJMP AJMP 標(biāo)號(hào)標(biāo)號(hào) ;跳轉(zhuǎn)范圍為;跳轉(zhuǎn)范
37、圍為2KB2KBLJMP LJMP 標(biāo)號(hào)標(biāo)號(hào) ;跳轉(zhuǎn)范圍為;跳轉(zhuǎn)范圍為64KB64KBSJMP SJMP 標(biāo)號(hào)標(biāo)號(hào) ;跳轉(zhuǎn)范圍為;跳轉(zhuǎn)范圍為256B256B2022-5-2750非數(shù)字字符開(kāi)頭,后跟字母、數(shù)字、非數(shù)字字符開(kāi)頭,后跟字母、數(shù)字、“- -”、“?”等等不能用已定義的保留字(指令助記符、偽指令等)不能用已定義的保留字(指令助記符、偽指令等)后跟英文冒號(hào)后跟英文冒號(hào)“: :” 標(biāo)號(hào):是指令的符號(hào)地址,通常作為轉(zhuǎn)移指令的操作數(shù)。標(biāo)號(hào):是指令的符號(hào)地址,通常作為轉(zhuǎn)移指令的操作數(shù)。 LOOP:MOV A,#7FH LOOP:MOV A,#7FH LJMP LOOP LJMP LOOPHERE
38、:LJMP HERE HERE:LJMP HERE 或或 LJMP $LJMP $HERE:AJMP HERE HERE:AJMP HERE 或或 AJMP $AJMP $HERE:SJMP HERE HERE:SJMP HERE 或或 SJMP $SJMP $編程時(shí),經(jīng)常遇到等待中斷或調(diào)試程序,常使程序編程時(shí),經(jīng)常遇到等待中斷或調(diào)試程序,常使程序“原地原地踏步的需要,可使用以下指令:踏步的需要,可使用以下指令: 2022-5-2751比較不等轉(zhuǎn)移比較不等轉(zhuǎn)移CJNE Aderect ACJNE Rn#data, Ri, 標(biāo)號(hào),標(biāo)號(hào)注意:該指令會(huì)改變PSW寄存器中的CY值。(1)若目的字節(jié)中內(nèi)
39、容小于源字節(jié)中內(nèi)容時(shí),CY置1;(2)若目的字節(jié)中內(nèi)容大于或等于源字節(jié)中內(nèi)容時(shí),CY清02 2 條件轉(zhuǎn)移條件轉(zhuǎn)移用的較多2022-5-2752減減1 1不為不為0 0轉(zhuǎn)移轉(zhuǎn)移RnDJNZ direct,標(biāo)號(hào)累加器判累加器判0 0轉(zhuǎn)移(基本不用)轉(zhuǎn)移(基本不用) JZ JNZ標(biāo)號(hào)用的較多2022-5-2753【例例3-483-48】有一段程序如下,該程序執(zhí)行后,有一段程序如下,該程序執(zhí)行后,A A中的值是多少?中的值是多少? MOV R0,#0AH CLR ALOOPX:ADD A,R0 DJNZ R0,LOOPX SJMP $(A A)=10+9+8+7+6+5+4+3+2+1=37H=10+
40、9+8+7+6+5+4+3+2+1=37H,本例中,本例中23H23H地址就地址就是一個(gè)軟計(jì)數(shù)器是一個(gè)軟計(jì)數(shù)器思考:能否有其他方法編寫(xiě)這段程序?55/16=3 755/16=3 72022-5-2754 MOV R0,#10 CLR ALOOPX:ADD A,R0 DEC R0 CJNE R0,#0,LOOPX SJMP $2022-5-27553 3 子程序調(diào)用與返回子程序調(diào)用與返回調(diào)用指令調(diào)用指令A(yù)CALL LCALL標(biāo)號(hào)返回指令返回指令RETRETIRETRET指令的功能是從堆棧中彈出調(diào)用指令壓入堆棧保護(hù)指令的功能是從堆棧中彈出調(diào)用指令壓入堆棧保護(hù)的返回地址(又稱(chēng)為斷點(diǎn))。的返回地址(又
41、稱(chēng)為斷點(diǎn))。RETIRETI專(zhuān)用于中斷服務(wù)程專(zhuān)用于中斷服務(wù)程序返回,它具有清除內(nèi)部相應(yīng)的中斷狀態(tài)觸發(fā)器(以序返回,它具有清除內(nèi)部相應(yīng)的中斷狀態(tài)觸發(fā)器(以保證正確的中斷邏輯)的功能。保證正確的中斷邏輯)的功能。 普通子程序返回指令中斷子程序返回指令2022-5-27564 4 空操作空操作NOP NOP ;PC PC (PCPC)+ 1+ 1,占占1 1個(gè)周期個(gè)周期、一個(gè)字節(jié)一個(gè)字節(jié) 這條指令不產(chǎn)生任何功能性作用,在執(zhí)行時(shí)間上要消耗這條指令不產(chǎn)生任何功能性作用,在執(zhí)行時(shí)間上要消耗1 1個(gè)機(jī)器周期,因此主要個(gè)機(jī)器周期,因此主要用于較短暫精確時(shí)間延時(shí)用于較短暫精確時(shí)間延時(shí)。2022-5-2757延時(shí)
42、子程序示例延時(shí)子程序示例Delay:MOV R4,#249Delay:MOV R4,#249 ;1;1個(gè)機(jī)器周期個(gè)機(jī)器周期DL2:DL2:NOP NOP ;1;1個(gè)機(jī)器周期個(gè)機(jī)器周期NOPNOP;1;1個(gè)機(jī)器周期個(gè)機(jī)器周期DJNZ R4,DL2DJNZ R4,DL2 ;2;2個(gè)機(jī)器周期個(gè)機(jī)器周期RETRET;2;2個(gè)機(jī)器周期個(gè)機(jī)器周期【例例】若晶振頻率為若晶振頻率為12MHz12MHz,試計(jì)算下述延時(shí)子程序延時(shí)的,試計(jì)算下述延時(shí)子程序延時(shí)的時(shí)間。時(shí)間。延時(shí)的時(shí)間為:(1*1+1*249+1*249+2*249+2*1)us=999us思考:若延時(shí)時(shí)間再長(zhǎng)些,比如10ms,如何處理?1次249次
43、249次249次1次2022-5-2758嵌套嵌套延時(shí)子程序示例延時(shí)子程序示例Delay:MOV R5,#10Delay:MOV R5,#10;1;1個(gè)機(jī)器周期個(gè)機(jī)器周期DL1:DL1:MOV R4,#249MOV R4,#249 ;1;1個(gè)機(jī)器周期個(gè)機(jī)器周期DL2:DL2:NOP NOP ;1;1個(gè)機(jī)器周期個(gè)機(jī)器周期NOP NOP ;1;1個(gè)機(jī)器周期個(gè)機(jī)器周期DJNZ R4,DL2DJNZ R4,DL2 ;2;2個(gè)機(jī)器周期個(gè)機(jī)器周期DJNZ R5,DL1DJNZ R5,DL1 ;2;2個(gè)機(jī)器周期個(gè)機(jī)器周期RETRET;2;2個(gè)機(jī)器周期個(gè)機(jī)器周期延時(shí)的時(shí)間為:(1+1*10+4*2490+2*
44、10+2*1)us=9993us, 非常接近10ms1次10次249*10次249*10次249*10次10次1次2022-5-27593.2.5 3.2.5 位操作類(lèi)指令(位操作類(lèi)指令(1717條)條)位操作是以位為單位進(jìn)行的各種操作。位操作指位操作是以位為單位進(jìn)行的各種操作。位操作指令中的位地址有令中的位地址有4 4種表示形式:種表示形式: 直接地址直接地址 (如,(如,0D5H0D5H);); 點(diǎn)操作符點(diǎn)操作符 (如,(如,0D0H.40D0H.4、PSW.4PSW.4等);等); 位名稱(chēng)位名稱(chēng) (如,(如,RS1RS1);); 偽指令定義(如,偽指令定義(如,MYFLAG BIT F0
45、MYFLAG BIT F0)。)。以上幾種形式表示的都是以上幾種形式表示的都是PSWPSW中的中的位位5 5。位操作指令中,位累加器要用位操作指令中,位累加器要用“C C”表示。表示。位累加器相當(dāng)于字節(jié)操作時(shí)的累加器位累加器相當(dāng)于字節(jié)操作時(shí)的累加器A A。2022-5-27601 1 位傳送(用的很少)位傳送(用的很少)MOV bit,C ;bit(CY) MOV C ,bit ;CY (bit) 2 2 位狀態(tài)設(shè)置(位狀態(tài)設(shè)置(用的較多用的較多)位清位清0 0 0bit bit 0CY C CLR;位置位位置位 1bit bit 1CY C SETB;2022-5-27613 3 位邏輯運(yùn)算
46、(用的很少)位邏輯運(yùn)算(用的很少)位邏輯與位邏輯與位邏輯或位邏輯或 bitCYCY /bit bitCYCY bit C ANL)()(;)()(;, bitCYCY /bit bitCYCY bit C ORL)()(;)()(;,位取反位取反 bitbit bit CYCY C CPL)(;)(;2022-5-2762判判CYCY轉(zhuǎn)移(注意與轉(zhuǎn)移(注意與JZJZ和和JNZJNZ的區(qū)別)的區(qū)別) (用的很少)(用的很少)判判bitbit轉(zhuǎn)移轉(zhuǎn)移4 4 位控制轉(zhuǎn)移位控制轉(zhuǎn)移JC JNC標(biāo)號(hào); ;若(若(CYCY)=1,PC=1,PC(PCPC)+2+rel,+2+rel,否則順次執(zhí)行。否則順次
47、執(zhí)行。; ;若(若(CYCY)=0;PC=0;PC(PCPC)+2+rel;+2+rel;否則順次執(zhí)行。否則順次執(zhí)行。JBJNBJBC bit , 標(biāo)號(hào); ;(bitbit)=1,PC=1,PC(PCPC)+3+rel,+3+rel,否則順次執(zhí)行。否則順次執(zhí)行。; ;(bitbit)=1,PC=1,PC(PCPC)+3+rel,bit0,+3+rel,bit0,否則順次執(zhí)行否則順次執(zhí)行; ;(bitbit)=0,PC=0,PC(PCPC)+3+rel,+3+rel,否則順次執(zhí)行否則順次執(zhí)行 用的較多2022-5-2763偽指令,也叫匯編命令。僅對(duì)匯編過(guò)程進(jìn)行指示作用偽指令,也叫匯編命令。僅對(duì)匯
48、編過(guò)程進(jìn)行指示作用偽指令無(wú)對(duì)應(yīng)的單片機(jī)可執(zhí)行代碼偽指令無(wú)對(duì)應(yīng)的單片機(jī)可執(zhí)行代碼 1 1、起始地址設(shè)定偽指令、起始地址設(shè)定偽指令ORGORGORG ORG 表達(dá)式表達(dá)式表達(dá)式通常為十六進(jìn)制地址,例:表達(dá)式通常為十六進(jìn)制地址,例: ORG 8000HSTART:MOV A,#30H ORGORG可多次使用,但地址值的順序要由小到大可多次使用,但地址值的順序要由小到大 2 2、結(jié)束匯編偽指令、結(jié)束匯編偽指令ENDENDEND該偽指令位于源程序的該偽指令位于源程序的最后一行最后一行。3.2.6 3.2.6 偽操作類(lèi)指令偽操作類(lèi)指令每次都用每次都用2022-5-27643 3、定義字節(jié)數(shù)據(jù)表偽指令、定義
49、字節(jié)數(shù)據(jù)表偽指令DBDB1000H 標(biāo)號(hào):標(biāo)號(hào): DB DB 字節(jié)數(shù)據(jù)表字節(jié)數(shù)據(jù)表如:如:ORG 1000HORG 1000HDB -2,-4,-6,8,10,18DB -2,-4,-6,8,10,18FEH FCHFAH08H0AH12H1001H用的較多4 4、定義位地址為符號(hào)名偽指令、定義位地址為符號(hào)名偽指令BITBIT符號(hào)名符號(hào)名 BIT BIT 位地址表達(dá)式位地址表達(dá)式如:如:ST BIT P1.0 ;ST BIT P1.0 ;將將P1.0P1.0的位地址賦給符號(hào)名的位地址賦給符號(hào)名STSTCF BIT 0D7H ;CF BIT 0D7H ;將位地址為將位地址為D7HD7H的位定義為
50、符號(hào)名的位定義為符號(hào)名初學(xué)用的較少2022-5-27655 5、定義常值為符號(hào)名偽指令、定義常值為符號(hào)名偽指令EQUEQU符號(hào)名符號(hào)名 EQU EQU 常值表達(dá)式常值表達(dá)式 LENLEN EQUEQU 10 10 SUMSUM EQUEQU 21H 21HBLOCKBLOCK EQU EQU 22H 22H CLR A CLR A MOV R7, MOV R7,LENLEN MOV R0, MOV R0,BLOCKBLOCK LOOP:ADD A,R0 LOOP:ADD A,R0 INC R0 INC R0 DJNZ R7,LOOP DJNZ R7,LOOP MOV MOV SUMSUM,A ,A 符號(hào)名為:符號(hào)名為:v地址地址v常數(shù)常數(shù)v段名段名v字符串字符串v寄存器名寄存器名v位名位名初學(xué)用的較少2022-5-2766 單片機(jī)應(yīng)用系統(tǒng)由單片機(jī)應(yīng)用系統(tǒng)由硬件系統(tǒng)硬件系統(tǒng)和和軟件程序軟件程序構(gòu)成構(gòu)成 匯編語(yǔ)言匯編語(yǔ)言 高級(jí)語(yǔ)言高級(jí)語(yǔ)言 軟件程序設(shè)計(jì)方法軟件程序設(shè)計(jì)方法v匯編語(yǔ)言是用語(yǔ)言直接控制硬件,由硬件間接達(dá)匯編語(yǔ)言是用語(yǔ)言直接控制硬件,由硬件間接達(dá)到某種控制效果。而到某種控制效果。而C語(yǔ)言是一種比較高級(jí)的語(yǔ)語(yǔ)言是
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 新能源汽車(chē)代理獨(dú)家補(bǔ)充合作協(xié)議
- 律師事務(wù)所特殊合伙人法律援助基金管理合同
- 2025年中國(guó)岸電系統(tǒng)行業(yè)市場(chǎng)現(xiàn)狀及未來(lái)發(fā)展趨勢(shì)研究報(bào)告
- 網(wǎng)絡(luò)文學(xué)作品改編成虛擬現(xiàn)實(shí)體驗(yàn)獨(dú)家許可協(xié)議
- 離婚時(shí)房產(chǎn)分割與產(chǎn)權(quán)轉(zhuǎn)移全程服務(wù)合同
- 紙杯代加工協(xié)議書(shū)
- 石子場(chǎng)承包合同范本
- 幫忙還貸款協(xié)議書(shū)
- 翻圍墻安全協(xié)議書(shū)
- 精英團(tuán)隊(duì)商標(biāo)續(xù)展代理服務(wù)協(xié)議
- 安徽省合肥市45中學(xué)2025屆七年級(jí)數(shù)學(xué)第二學(xué)期期末監(jiān)測(cè)模擬試題含解析
- 初中化學(xué)教師招聘考試試題及參考答案
- 山塘租賃合同協(xié)議書(shū)
- 2025-2030年中國(guó)聚脲涂料行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 地七年級(jí)下冊(cè)全冊(cè)知識(shí)要點(diǎn)總復(fù)習(xí)-2024-2025學(xué)年七年級(jí)地理教學(xué)課件(人教版2024)
- 2025年教育行業(yè)工會(huì)工作計(jì)劃
- 小兒靜脈輸液安全管理
- 梗阻性肥厚型心肌病的臨床護(hù)理
- 合規(guī)管理考試試題及答案
- 施工現(xiàn)場(chǎng)安全作業(yè)流程考題
- 焊工初級(jí)測(cè)試試題及答案
評(píng)論
0/150
提交評(píng)論