版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、上節(jié)內(nèi)容回顧 MCS51單片機的指令數(shù)據(jù)傳送類(28條)算術(shù)運算類(24條)邏輯運算類(25條)控制轉(zhuǎn)移類(17條)位操作類(17條)練習 已知累加器A當前的內(nèi)容為23H,進位位C為1,執(zhí)行下列指令后,累加器A和進位位C各為多少?ANL A,#7FHORL A,#35XRL A,#FFHRLC ACJNE A,#40H,AAINC ASJMP BBAA:ADD A,#23HBB:SJMP $第8-9講教學目的和要求【教學目標】通過講述MCS-51單片機的匯編語言程序設(shè)計的基本步驟、基本方法,使學生對指令系統(tǒng)有進一步的認識和理解,同時使得學生掌握使用匯編語言進行程序設(shè)計的方法,通過實例加以鞏固。
2、【教學重點】單片機程序設(shè)計的基本方法; 查表、差值運算、譯碼等簡單程序設(shè)計方法;【教學難點】如何將實際問題轉(zhuǎn)換成單片機能識別和解決的問題第五章 MCS-51的匯編語言程序設(shè)計5.1 匯編語言程序設(shè)計概述語言的發(fā)展機器語言(Machine Language):二進制表示指令和數(shù)據(jù),能被機器直接識別的計算機語言。速度快、占用內(nèi)存少。匯編語言(Assembly Language):采用助記符表示的程序設(shè)計語言。內(nèi)存空間少,而且執(zhí)行速度快,但移植性差。高級語言(High Level Language):高級語言則是面向用戶的語言,移植性較好。MCS51單片機支持用匯編語言和C高級語言進行編程,在單片機
3、內(nèi)部最終轉(zhuǎn)換成機器語言存儲和運行。 源程序的編輯與匯編p解決實際問題時,往往需要根據(jù)業(yè)務(wù)邏輯和支持的指令,完成程序的編寫、調(diào)試、編譯、燒制等過程。匯編語言程序的結(jié)構(gòu) 匯編語言程序的四分段書寫格式標號字段 操作碼字段操作數(shù)字段注釋字段START:MOV A,#00H;0AMOV R1,#10;10R1MOV R2,#00000011B ;3R2LOOP:ADD A,R2;(A)+(R2) ADJNZ R1,LOOP;R1減1,若不為0則循環(huán)NOP;延遲1個機器周期HERE:SJMP HERE;原地跳轉(zhuǎn)END;程序結(jié)束5.1.1 指令的格式注意:標號:表示該指令所在的符號地址,一般由字母和數(shù)字組成
4、,第一位為字母,其余位為字母、數(shù)字任選。操作助記符不能缺少;操作數(shù)個數(shù)可為:1、2、3個,根據(jù)指令本身而定;2個操作數(shù)的指令,目的操作數(shù)在左邊;一般格式標號: :操作助記符 目的操作數(shù), ,源操作數(shù); ;注釋匯編程序設(shè)計中,每一行書寫一條指令。指令的補充說明p所有的符號均為英文符號,尤其注意常用的”,”、”;”。若書寫錯誤,編譯程序?qū)⑻崾尽安荒茏R別的符號”。p標號的書寫標號后必須跟冒號。標號最大支持18個字符,且必須以字母開頭同一標號在一個程序中只能定義一次不允許用系統(tǒng)保留字作為標號一般只有別的指令需要訪問的語句才有標號匯編時,匯編程序自動將標號轉(zhuǎn)換成地址。指令的補充說明p立即數(shù)和直接地址的書
5、寫若是十進制數(shù),后綴可無,也可以寫D;其他進制必須帶后綴。二進制B、八進制O、十六進制H??梢允亲址鏏、YU,編譯時自動轉(zhuǎn)換成其ASCII可以是指令的標號p美元符號$的使用。$符號表示當前地址,一般在程序結(jié)束或原地跳轉(zhuǎn)時使用,以下兩條指令等價:HERE:SJMP HERESJMP $5.1.2 偽指令 偽指令,也稱匯編命令。僅對匯編過程進行指示,方便匯編程序?qū)⒋a轉(zhuǎn)換成機器代碼。 偽指令無對應(yīng)的單片機可執(zhí)行代碼 偽指令具有控制匯編程序的輸入輸出、定義數(shù)據(jù)和符號、條件匯編,分配存儲空間等功能。 快速理解偽指令:如分配存儲空間偽指令,匯編程序在編譯時,根據(jù)偽指令的指示,完成存儲空間的劃分、初
6、值的置入等工作。無需單片機去執(zhí)行。5.1.2.1 ORG偽指令n起始地址設(shè)定偽指令n用于指定接下來指令在ROM中的存放位置n使用格式:ORG 16位地址(以四位十六進制方式書寫)n舉例:有如下指令段 ORG 2000H START:MOV A,#00Hp注意ORG可以多次使用使用順序必須由小到大ROMMOV A,#00H74H2000H00HORG 偽指令ORG 2500HORG 2000HORG 3000HORG 2000HORG 2500HORG 3000H錯誤的書寫方式正確的書寫方式5.1.2.2 END偽指令n匯編終止偽指令n用于告訴匯編程序,將某一段源程序翻譯成機器指令的工作到此為止
7、。后面的指令將忽略。n在整個源程序的最后添加END語句。n舉例MOV A,#12HMOV A,#23HENDMOV A,#45HROMMOV A,#12H74H12H74H23HMOV A,#23H5.1.2.3 DB 偽指令 定義字節(jié)數(shù)據(jù)表偽指令 用于從指定地址開始,在ROM的連續(xù)單元中定義字節(jié)數(shù)據(jù) 格式:標號: DB 字節(jié)數(shù)據(jù)表。用”,”分割表中的多個數(shù) 舉例:ORG 1000HTABLE:DB 20H,32,A,8p編譯時:十進制等自動轉(zhuǎn)換成十六進制字符轉(zhuǎn)換成ASCII碼ROM1000H20H20H41H38H1001H1002H1003HASCII碼表09 :30H39HAZ:41H5
8、AHaz :61H7AH5.1.2.4 DW 偽指令 定義字數(shù)據(jù)表偽指令 從指定地址開始,在ROM的連續(xù)單元中定義16位的數(shù)據(jù)字 格式:標號: DW 字數(shù)據(jù)表。用”,”分割表中的多個字 舉例:ORG 2000HTABLE:DW 1246H,10ROM2000H12H46H00H0AH2001H2002H2003H5.1.2.5 EQU 偽指令 用于給標號賦值 賦值后,后續(xù)程序中可用此標號表示對應(yīng)的數(shù)據(jù) 格式:標號 EQU 數(shù)據(jù)或匯編表達式。 舉例:LEN EQU 10*3SUM EQU 21HMOV R7,LEN MOV SUM, A對于常用的常量,采用此種方式后,當該常量發(fā)生變化時,無需頻繁
9、更改主程序內(nèi)容,只需修改之前的賦值語句即可。5.1.2.6 BIT 偽指令 將位地址定義成為符號名指令 賦值后,后續(xù)程序中位地址可直接用符號名符號名表示,增加程序的可讀性。 格式:符號名 BIT 位地址表達式。 舉例:ST BIT P1.0 ;將P1.0的位地址賦給符號名STCF BIT 0D7H ;將位地址為D7H的位定義為符號名p注意:用BIT定義的“符號名”一經(jīng)定義便不能重新定義和改變5.2匯編語言程序設(shè)計步驟 分析問題根據(jù)任務(wù)的要求,確定程序的功能要求、輸入輸出、解決步驟等問題。 算法設(shè)計將實際問題轉(zhuǎn)化為計算機處理的程序算法算法比較與優(yōu)化(內(nèi)存需求與運行速度)匯編語言程序設(shè)計步驟 流程
10、描述將算法的內(nèi)容用流程圖的形式表示,更加直觀。典型外設(shè)查詢程序流程匯編語言程序設(shè)計步驟 分配內(nèi)存等資源將片內(nèi)RAM資源合理分配,把內(nèi)存區(qū)、堆棧區(qū)、各種緩沖區(qū)進行合理分配。確定每個區(qū)域的首地址,便于編程使用。 程序的編寫與調(diào)試根據(jù)以上工作,結(jié)合MCS51單片機的指令系統(tǒng),完成源代碼的編寫,并上機調(diào)試,考查各種邊界情況。源程序的編輯 依據(jù)匯編語言規(guī)則 用好偽指令 符號不用中文 SJMP $ 用于調(diào)試 以 .ASM存盤 ORG 0000H LJMP MAIN ORG 0040HMAIN:MOV R7,#16 MOV R0,#60H MOV A,#55HLOOP:MOV R0,A INC R0 DJN
11、Z R7,LOOP SJMP $ ENDROMLJMP 0040H02H0000H00H40H7FH0040H10HMOV R7,#1680H004BHFEHSJMP $程序匯編及連接p源程序的匯編n 匯編源程序轉(zhuǎn)為目標程序的過程叫匯編n 匯編通常在Windows下的集成開發(fā)環(huán)境完成n 用A51.EXE匯編生成.OBJ、.LIB及.LSTp目標程序的連接n.OBJ、.LIB經(jīng)BL51.EXE生成無擴展名的絕對地址目標文件n絕對地址目標文件可以用于仿真器調(diào)試n調(diào)試無誤的目標文件用OH51.EXE轉(zhuǎn)換為.HEX文件n.HEX文件經(jīng)編程器寫入單片機存儲器注意事項n強化模塊觀念p程序模塊(主程序模塊、
12、各種子程序模塊)p模塊化優(yōu)點:分塊設(shè)計、便于閱讀、調(diào)試方便n采用循環(huán)和子程序p使程序占用空間減少、結(jié)構(gòu)清晰p循環(huán)初值和結(jié)束條件,避免“死機”現(xiàn)象p子程序的現(xiàn)場保護(注意棧平衡、寄存器內(nèi)容)5.3匯編語言程序基本結(jié)構(gòu)匯編語言程序主要包含四種結(jié)構(gòu)p順序結(jié)構(gòu)p分支結(jié)構(gòu)p循環(huán)結(jié)構(gòu)p子程序結(jié)構(gòu)5.3.1 順序結(jié)構(gòu) 指令執(zhí)行時,其執(zhí)行順序按照指令在存儲器中的存放順序進行的。開始語句1語句n結(jié)束 【特點】順序執(zhí)行,程序通常簡單;無分支、無循環(huán)、無轉(zhuǎn)移圖中無判斷框;順序結(jié)構(gòu)舉例1 數(shù)據(jù)傳送:內(nèi)部RAM的2AH2EH單元中存儲的數(shù)據(jù)如圖所示。試編寫程序?qū)崿F(xiàn)圖示的數(shù)據(jù)傳送結(jié)果。2EH78H56H34H12H2DH
13、2CH2BH00H2AHACC2EH56H34H12H00H2DH2CH2BH00H2AHACC78H方法1 內(nèi)部RAM的2AH2EH單元內(nèi)容傳遞至2BF2EF、A中。MOV A,2EH ;2字節(jié),1個機器周期MOV 2EH,2DH ;3字節(jié),2個機器周期MOV 2DH,2CH ;3字節(jié),2個機器周期MOV 2CH,2BH ;3字節(jié),2個機器周期MOV 2BH,#00H ;3字節(jié),2個機器周期使用14個字節(jié)的指令代碼,執(zhí)行時間為9個機器周期2EH78H56H34H12H2DH2CH2BH00H2AHACC78H56H34H12H00H2EH56H34H12H00H2DH2CH2BH00H2AH
14、ACC78H方法2 內(nèi)部RAM的2AH2EH單元內(nèi)容傳遞至2BF2EF、A中。CLR A ;1字節(jié),1個機器周期XCH A,2BH ;2字節(jié),1個機器周期XCH A,2CH ;2字節(jié),1個機器周期XCH A,2DH ;2字節(jié),1個機器周期XCH A,2EH ;2字節(jié),1個機器周期使用9個字節(jié)的指令代碼,執(zhí)行時間為5個機器周期2EH78H56H34H12H2DH2CH2BH00H2AHACC00H12H00H34H12H56H34H78H56H2EH56H34H12H00H2DH2CH2BH00H2AHACC78H順序結(jié)構(gòu)舉例2 碼制轉(zhuǎn)換:片內(nèi)RAM的21H單元存放一個十進制數(shù)據(jù)十位的ASCII
15、碼,22H單元存放該數(shù)據(jù)個位的ASCII碼。編寫程序?qū)⒃摂?shù)據(jù)轉(zhuǎn)換成壓縮BCD碼存放在20H單元。 20H36H34H21H22Hp數(shù)字字符的ASCII碼為30H+數(shù)p如字符3的ASCII碼為33H。p右側(cè)表示存放的為數(shù)據(jù)64。64H程序ASCII到壓縮BCD碼的轉(zhuǎn)換 分析p取21H單元低位數(shù)據(jù),移至高位p取22H單元內(nèi)容,去掉高位p上述結(jié)果組合,傳送至20H單元20H36H34H21H22H64H程序ASCII到壓縮BCD碼的轉(zhuǎn)換程序ORG 0040HSTART: MOV A,21H ;取十位ASCII碼ANL A,#0FH ;保留低半字節(jié)SWAP A ;移至高半字節(jié)MOV 20H,A ;存入
16、20H單元MOV A,22H ;取個位ASCII碼ANL A,#0FH ;保留低半字節(jié)ORL 20H,A ;合并到結(jié)果單元SJMP $END20H36H34H21H22HACC36H06H60H60H34H04H64H20HX21H程序平方表區(qū)順序結(jié)構(gòu)舉例3 查表程序:有一變量存放在片內(nèi)RAM的20H單元,其取值范圍為:00H05H。要求編制一段程序,使用查表指令,根據(jù)變量值求其平方值,并存入片內(nèi)RAM的21H單元。 X2開始A (21H)(20H)A表格首地址DPTRMOVC A,A+DPTR結(jié)束查表操作程序 ORG 1000HSTART:MOV DPTR,#TABLE MOV A,20H
17、MOVC A,A+DPTR MOV 21H,A SJMP $ ORG 2000HTABLE:DB 00,01,04,09,16,25 END 開始A (21H)(20H)A表格首地址DPTRMOVC A,A+DPTR結(jié)束練習n根據(jù)累加器A的值(0 7FH)查平方表,求平方值,結(jié)果放在BA中。TABLE:DW 0000H,0001H,0004H,0009H DW 0010H,0019H,MOV DPTR,#TABLEMOVC A,A+DPTRMOV B,AINC AMOVC A,A+DPTRTABLE00H00H00H01HTABLE+100HROM04HTABLE+2TABLE+3TABLE+
18、4TABLE+5RL APUSH ACCPOP ACCMOV DPTR,#TABLERL APUSH ACCMOVC A,A+DPTRMOV B,APOP ACCINC AMOVC A,A+DPTR5.3.2 分支結(jié)構(gòu)p指令執(zhí)行時,根據(jù)不同的情況執(zhí)行不同的程序段。單分支 雙分支 多分支單分支結(jié)構(gòu) 設(shè)累加器A中存儲有符號數(shù)的原碼,編程轉(zhuǎn)換成補碼開始保存A最高位結(jié)束最高位為0NA數(shù)據(jù)位取反+1恢復符號位YCMPT:JNB Acc.7, RETURN MOV C,Acc.7 CPL A ADD A,#1 MOV Acc.7,CRETURN:SJMP $ END雙分支結(jié)構(gòu)n設(shè)變量x以補碼的形式存放在片
19、內(nèi)RAM的30H單元,變量y與x的關(guān)系是:p當x0時,y=x;p當x=0時,y=20H;p當x0時,y=x;p當x=0時,y=20H;p當x0,轉(zhuǎn)結(jié)束MOV A, #05H ;x 0處理ADD A, 30H MOV 30H, A ;X+05H送YSJMP DONE5.3.3 循環(huán)結(jié)構(gòu)p按某種控制規(guī)律重復執(zhí)行的程序稱為循環(huán)程序。循環(huán)程序有先執(zhí)行后判斷和先判斷后執(zhí)行兩種基本結(jié)構(gòu)。例1 延時程序 編寫一段延時50ms的程序p若晶振頻率為12MHz,則一個機器周期為1s,延時50ms,則程序的執(zhí)行時間為50000個機器周期。p立即數(shù)取指在0255之間,可考慮200*250=50000。p需要用到減1,
20、結(jié)果不為0則重復的指令。p執(zhí)行一條DJNZ指令需要2個機器周期,即 2s。采用循環(huán)計數(shù)法實現(xiàn)延時,需要用到雙重循環(huán)。延時程序DEL: MOV R7,#200 ;1 sDEL1:NOP ; 1 sDEL1: MOV R6,#? ;1 s NOP ;1 sDEL2:DJNZ R6,DEL2 ;2s DJNZ R7,DEL1 ;2s DEL1: MOV R6,#123 ;1 s共計 (21232 2)200+1 s,即50.001ms例2 未知次數(shù)的循環(huán)將內(nèi)部RAM中起始地址為data的數(shù)據(jù)串傳送到外部RAM中起始地址為buffer的存儲區(qū)域內(nèi),直到發(fā)現(xiàn)$ 字符停止傳送。data?H?Hdata+1
21、內(nèi)部RAM$?bufferbuffer+1外部RAM問題何時終止傳送?對取出的數(shù)進行與S進行比較,判斷是否相等。用CJNE 例2 未知次數(shù)的循環(huán)程序?qū)?nèi)部RAM中起始地址為data的數(shù)據(jù)串傳送到外部RAM中起始地址為buffer的存儲區(qū)域內(nèi),直到發(fā)現(xiàn)$ 字符停止傳送。 MOV R0,#data MOV DPTR,#bufferLOOP: MOV A,R0 CJNE A,$,繼續(xù)執(zhí)行地址 結(jié)束 LP:MOVX DPTR,A INC R0 INC DPTR SJMP LOOPLP2: SJMP $ END SJMP LP2 CJNE A,$,LP 5.4 子程序及其調(diào)用p在實際應(yīng)用中,經(jīng)常會遇到一
22、些帶有通用性的問題,在一個程序中可能要使用多次。這時可以將其設(shè)計成通用的子程序供隨時調(diào)用,減少代碼冗余。n一個程序中可以多次調(diào)用一個子程序n多個程序可以調(diào)用一個子程序n子程序可以調(diào)用子程序,最多支持8級p調(diào)用子程序時,單片機能自動保存PC內(nèi)容,遇RET返回時,能自動恢復PC程序1子程序RET程序2子程序結(jié)構(gòu) 子程序編寫完成后,使用pACALL 函數(shù)名(短距離調(diào)用)pLCALL 函數(shù)名(整個ROM區(qū)調(diào)用) 此處的函數(shù)名,實際上是一個標號,編譯后形成具體的地址。n 子程序的處理過程中,可能要影響PSW、ACC,以及其他的一些功能寄存器,若這些影響是子程序功能的一部分,則無需保護;否則,一定要保護現(xiàn)
23、場,使得主程序得以正確執(zhí)行。保護現(xiàn)場子程序處理恢復現(xiàn)場RET子程序函數(shù)名:通過堆棧進行現(xiàn)場的保護SUB1:PUSH PSW ;保護現(xiàn)場 PUSH ACC ; PUSH B ; MOV PSW,#10H ;換當前工作寄存器組 POP B ;恢復現(xiàn)場 POP ACC ; POP PSW ; RET注意:保護和恢復的工作在子程序中進行。保護與恢復的順序要對應(yīng)。子程序結(jié)構(gòu) 子程序參數(shù)的傳遞。p調(diào)用子程序時,語句中無法攜帶子程序運行所需的參數(shù)。p明確子程序的功能后,對子程序使用的參數(shù),應(yīng)在調(diào)用之前完成數(shù)據(jù)的賦值等工作。p類似乘法指令MUL AB,必須在此指令之前將AB賦值,運算才有意義。保護現(xiàn)場子程序處
24、理恢復現(xiàn)場RET子程序函數(shù)名:子程序舉例n編寫程序,實現(xiàn)c=a2+b2 。設(shè)a,b,c分別存于內(nèi)部RAM的30H,31H,32H三個單元中 如何求數(shù)的平方 MUL AB 左移 查表開始調(diào)用求平方子程序結(jié)束a2R1(31H)A(30H)AA+R1A調(diào)用求平方子程序A32H方法1:直接相乘START:MOV A,30H ;取a ACALL SQR ;調(diào)用乘法 MOV R1,A ;a2 暫存于R1中 MOV A,31H ;取b ACALL SQR ;調(diào)用查平方表 ADD A,R1 ;a2+b2 存于A中 MOV 32H,A ;存結(jié)果 SJMP $ SQR :PUSH PSW MOV B,A MUL
25、AB; POP PSW RET開始調(diào)用求平方子程序結(jié)束a2R1(31H)A(30H)AA+R1A調(diào)用求平方子程序A32H方法2:左移1次START:MOV A,30H ;取a ACALL SQR ;調(diào)用乘法 MOV R1,A ;a2 暫存于R1中 MOV A,31H ;取b ACALL SQR ;調(diào)用查平方表 ADD A,R1 ;a2+b2 存于A中 MOV 32H,A ;存結(jié)果 SJMP $ SQR :PUSH PSW RL A POP PSW RET開始調(diào)用求平方子程序結(jié)束a2R1(31H)A(30H)AA+R1A調(diào)用求平方子程序A32H方法3:查表START:MOV A,30H ;取a ACALL SQR ;調(diào)用乘法 MOV R1,A ;a2 暫存于R1中 MOV A,31H ;取b ACALL SQR ;調(diào)用查平方表 ADD A,R1 ;a2+b2 存于A中 MOV 32H,A ;存結(jié)果 SJMP $ SQR :MOV DPTR,#TAB ;子程序 MOVC A,A+DPTR ; RET TAB :DB 0,1,4,9,16 ,25,36,49,64,81 DB 開始調(diào)用求平方子程序結(jié)束a2R1(31H)A(30H)AA+R1A調(diào)用求平方子程序A32H5.5 綜合舉例 設(shè)有一串字符,依次存放在內(nèi)部RAM從30H單元開始的連續(xù)單元中,該字符串以0AH為結(jié)束標識(0AH不計
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 繆含2025年度離婚協(xié)議書及房產(chǎn)分割細則4篇
- 全新2025年度教育信息化建設(shè)合同
- 2025版信托投資公司外匯資產(chǎn)托管服務(wù)合同3篇
- 二零二五年度中美教育機構(gòu)合作項目風險評估與管理合同3篇
- 二零二五版美縫施工與環(huán)保驗收合同4篇
- 水庫工程質(zhì)量檢測與監(jiān)控2025年度承包合同2篇
- 2025新生入學法律協(xié)議書(教育保障與未來規(guī)劃)3篇
- 二零二五年度定制門窗品牌代理銷售合同規(guī)范4篇
- 2025版農(nóng)田挖掘機操作工勞動合同模板6篇
- 個人出租車承包合同(2024版)
- 2024年高純氮化鋁粉體項目可行性分析報告
- 安檢人員培訓
- 危險性較大分部分項工程及施工現(xiàn)場易發(fā)生重大事故的部位、環(huán)節(jié)的預(yù)防監(jiān)控措施
- 《榜樣9》觀后感心得體會四
- 2023事業(yè)單位筆試《公共基礎(chǔ)知識》備考題庫(含答案)
- 化學-廣東省廣州市2024-2025學年高一上學期期末檢測卷(一)試題和答案
- 2025四川中煙招聘高頻重點提升(共500題)附帶答案詳解
- EHS工程師招聘筆試題與參考答案(某大型央企)2024年
- 營銷策劃 -麗亭酒店品牌年度傳播規(guī)劃方案
- 2025年中國蛋糕行業(yè)市場規(guī)模及發(fā)展前景研究報告(智研咨詢發(fā)布)
- 護理組長年底述職報告
評論
0/150
提交評論