




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第四章80C51單片微機(jī)的程序設(shè)計(jì)南京郵電大學(xué)電氣工程系本章內(nèi)容簡介4.1概述4.1.1匯編語言格式4.1.2偽指令語句4.280C51匯編語言程序設(shè)計(jì)4.2.1順序結(jié)構(gòu)程序設(shè)計(jì)4.2.2分支結(jié)構(gòu)程序設(shè)計(jì)4.2.3循環(huán)結(jié)構(gòu)程序設(shè)計(jì)4.2.4子程序設(shè)計(jì)4.2.5程序設(shè)計(jì)舉例4.3本章小結(jié)4.1.1匯編語言格式
計(jì)算機(jī)語言機(jī)器語言、匯編語言與高級語言
用于執(zhí)行程序與完成程序設(shè)計(jì)4.1概述⑴機(jī)器語言①助記符指令與機(jī)器指令一一對應(yīng)
用匯編語言編寫的程序效率高,占用存儲(chǔ)空間小,運(yùn)行速度快,而且能反映計(jì)算機(jī)的實(shí)際運(yùn)行情況,所以用匯編語言能編寫出最優(yōu)化的程序。②匯編語言是“面向機(jī)器”的語言,編程比使用高級語言困難③能直接訪問存儲(chǔ)器、輸入與輸出接口及擴(kuò)展的各種芯片(比如A/D、D/A等),也可直接處理中斷,匯編語言能直接管理和控制硬件設(shè)備④通用性差⑵
匯編語言特點(diǎn)匯編過程示意圖
80C51系列單片微機(jī)從1985年開始就有C語言編譯器,簡稱C51。⑶高級語言BASIC、FORTRAN、COBOL等,參照數(shù)學(xué)語言設(shè)計(jì),近似人們?nèi)粘S谜Z。特點(diǎn):直觀、易學(xué)、易懂、通用性強(qiáng)、易于移植到不同類型的機(jī)器中。但是,計(jì)算機(jī)不能直接識(shí)別高級語言,需將其轉(zhuǎn)換為機(jī)器語言才能被識(shí)別和執(zhí)行。⒉匯編語言①匯編語言語句的種類
指令語句:匯編時(shí)產(chǎn)生1個(gè)目標(biāo)代碼,對應(yīng)1種操作 例如:MOVA,#0
偽指令語句:為匯編語言服務(wù)的,在匯編時(shí)沒有目標(biāo)代碼與之對應(yīng) 例如:ONEEQU1
宏指令語句:用以代替匯編語言源程序中重復(fù)使用的程序段的1種語句,由匯編程序在匯編時(shí)產(chǎn)生相應(yīng)的目標(biāo)代碼②匯編語言語句的格式指令語句的格式:【標(biāo)號(名字)】:助記符(操作碼)【操作數(shù)(參數(shù))】;【注釋】
偽指令語句的格式:名字定義符參數(shù);注釋各字段之間用1個(gè)空格或字段定界符分隔,常用的字段定界符有冒號“:”、逗號“,”和分號“;”。其中方括號括起來的是可選擇部分。標(biāo)號(名字)域: 說明指令的地址;可以作為LJMP、AJMP、LCALL及ACALL等指令的操作數(shù)。在指令語句中,標(biāo)號位于一個(gè)語句的開頭位置,由字母和數(shù)符組成,字母打頭,冒號“:”結(jié)束。標(biāo)號中的字符個(gè)數(shù)一般不超過8個(gè),若超過8個(gè),則以前面的8個(gè)為有效,后面字符不起作用。不能使用本匯編語言中已經(jīng)定義了的符號作標(biāo)號,比如指令助記符(如ADD)、偽指令(如END)
一條語句可以有標(biāo)號,也可以沒有標(biāo)號操作碼域:是指令的助記符或定義符,用來表示指令的性質(zhì),規(guī)定這個(gè)指令語句的操作類型偽指令語句中的定義符規(guī)定這個(gè)指令語句的偽操作功能對于標(biāo)號缺省的語句,操作碼域作為一行的開始。但在書寫時(shí),應(yīng)與上一行的操作碼對齊操作數(shù)域:給出的是參與運(yùn)算或進(jìn)行其它操作的數(shù)據(jù)或這些數(shù)據(jù)的地址。操作數(shù)與操作碼之間用空格“”分隔,若有兩個(gè)操作數(shù),這兩個(gè)操作數(shù)之間必須用逗號“,”分開。對于常數(shù):若采用十六進(jìn)制數(shù)表示,其末尾必須加“H”說明;若十六進(jìn)制數(shù)以A、B、C、D、E、F開頭,其前面必須添1個(gè)“0”進(jìn)行引導(dǎo)說明。若采用二進(jìn)制數(shù)表示,其末尾必須用“B”說明;若采用十進(jìn)制數(shù)表示,可以不加后綴或加“D”說明例:把片外存儲(chǔ)器2200H單元中的數(shù)送入片內(nèi)70H單元中。 標(biāo)號域操作碼域操作數(shù)域注釋域
BEGIN:MOVDPTR,#2200H;(DPTR)=2200H MOVR0,#70H;(R0)=70H MOVXA,@DPTR;(A)=((DPTR)) MOV@R0,A;((R0))=(A)偽指令:為了便于編程和對匯編語言程序進(jìn)行匯編,各種匯編程序都提供一些特殊的指令由偽指令確定的操作稱為偽操作。偽指令又稱匯編程序控制譯碼指令。“偽”體現(xiàn)在匯編時(shí)不產(chǎn)生機(jī)器指令代碼,不影響程序的執(zhí)行,僅指明在匯編時(shí)執(zhí)行一些特殊的操作4.1.2偽指令語句指令格式為:ORG<表達(dá)式>含義:向匯編程序說明,下述程序段的起始地址由表達(dá)式指明。表達(dá)式通常為16進(jìn)制地址碼。一般規(guī)定,在由ORG偽指令定位時(shí),其地址應(yīng)當(dāng)由小到大,不能重疊。有效范圍一直到下一條ORG偽指令出現(xiàn)為止跟在ORG偽指令后面的程序段或數(shù)據(jù)段是絕對地址還是浮動(dòng)地址段依賴于ORG右邊的表達(dá)式性質(zhì)⒈O(jiān)RG(ORiGIN)匯編起始地址偽指令 ORG1000HSTART:MOVA,#12H
假定ORG右邊的表達(dá)式是浮動(dòng)程序段中定義的標(biāo)號RELOCA,則
ORGRELOCASUBROU:……
表明
SUBROU起始于
RELOCA(它是相對地址)浮動(dòng)地址的程序段。
匯編結(jié)束偽指令一般有以下兩種格式: 主程序模塊:<標(biāo)號>END<表達(dá)式> 子程序模塊:<標(biāo)號>END
含義:通知匯編程序,該程序段匯編至此結(jié)束。END語句應(yīng)設(shè)置在整個(gè)程序(包括偽指令在內(nèi))的后面。 當(dāng)源程序?yàn)橹鞒绦驎r(shí),END偽指令中可有標(biāo)號,這個(gè)標(biāo)號應(yīng)是主程序第一條指令的符號地址。若源程序?yàn)樽映绦颍瑒t在END偽指令中不需要帶標(biāo)號。
⒉END(ENDofassembly)匯編結(jié)束偽指令
指令格式為:<標(biāo)號>EQU<表達(dá)式> 含義:把表達(dá)式賦值于標(biāo)號,這里的標(biāo)號和表達(dá)式是必不可少的。例如:
LOOP EQU 2002H是向匯編程序表明,標(biāo)號LOOP的值為2002H。又如:
LOOP1EQU LOOP LOOP已賦值為2002H,則相當(dāng)于LOOP1=LOOP,即LOOPI也為2002H,在程序中LOOP和LOOP1可以互換使用。
用EQU語句給一個(gè)標(biāo)號賦值以后,在整個(gè)源程序中該標(biāo)號的值是固定的,不能更改。⒊EQU(EQUate)賦值偽指令
指令格式為:<標(biāo)號>DL<表達(dá)式>
含義:說明標(biāo)號等值于表達(dá)式。同樣,標(biāo)號和表達(dá)式是必不可少的。例如;
COUNTDL3000H;S定義標(biāo)號COUNT的值為 ;3000H COUNTDLCOUNT十1;重新定義COUNT的值為 ;3000H+l注:可用DL語句在同一源程序中給同一標(biāo)號賦予不同的值,即可更改已定義的標(biāo)號值;而用EQU語句定義的標(biāo)號,在整個(gè)源程序中不能更改
⒋DL定義標(biāo)號值偽指令
指令格式為:<標(biāo)號>DB<表達(dá)式或表達(dá)式表>含義:將表達(dá)式或表達(dá)式表所表示的數(shù)據(jù)或數(shù)據(jù)串存入從標(biāo)號開始的連續(xù)存儲(chǔ)單元中。標(biāo)號為可選項(xiàng),它表示數(shù)據(jù)存儲(chǔ)單元地址。表達(dá)式或表達(dá)式表是指一個(gè)字節(jié)或用逗號分開的字節(jié)數(shù)據(jù)。可以是用引號括起來的字符串。字符串中的字符按ASCII碼存于連續(xù)的ROM中。例如:
ORG 2000HTABLEDB73H,04,100,32,00,-2,“ABC”
表示字節(jié)串?dāng)?shù)據(jù)存入由TABLE標(biāo)號為起始地址的連續(xù)存儲(chǔ)器單元中。即從2000H存儲(chǔ)單元開始依次連續(xù)存放數(shù)據(jù)為:73H,04H,64H,20H,00H,F(xiàn)EH,41H,42H,43H。
⒌DB(DefineByte)定義字節(jié)偽指令注意:若不采用ORG偽指令專門規(guī)定數(shù)據(jù)區(qū)的起始地址,則數(shù)據(jù)區(qū)的起始地址即根據(jù)DB命令前一條指令的地址確定。這時(shí)DB所定義的數(shù)據(jù)字節(jié)的起始地址為DB命令前一條指令的地址加上該指令的字節(jié)數(shù)。
指令格式為:<標(biāo)號>DW<表達(dá)式或表達(dá)式表>含義:把字或字串值存入由標(biāo)號開始的連續(xù)存儲(chǔ)單元中,且把字的高字節(jié)數(shù)存入低地址單元,低字節(jié)數(shù)存入高地址單元。按順序連續(xù)存放。
DW 100H,3456H,814
表示按順序存入01H,00H,34H,56H,03H,2EH注:DB和DW定義的數(shù)表,數(shù)的個(gè)數(shù)不得超過80個(gè)。若數(shù)據(jù)的數(shù)目較多時(shí),可以使用多個(gè)定義命令。一般以DB來定義數(shù)據(jù),以DW來定義地址。⒍DW(DefineWord)定義字偽指令
指令格式為:<標(biāo)號>DS<表達(dá)式>含義:通知匯編程序,在目標(biāo)代碼中,以標(biāo)號為首地址保留表達(dá)式值的若干存儲(chǔ)單元以備源程序使用。匯編時(shí),對這些單元不賦值。例如:
BASEDS100H
通知匯編程序,從標(biāo)號BASE開始,保留100H個(gè)存儲(chǔ)單元,以備源程序另用。
注意:對于80C51單片微機(jī),DB、DW、DS等偽指令只能應(yīng)用于程序存儲(chǔ)器,而不能對數(shù)據(jù)存儲(chǔ)器使用。
⒎DS(DefineStorage)定義存儲(chǔ)區(qū)偽指令
命令格式為:<字符名稱>BIT<位地址>
含義:給字符名稱賦予位地址。其中,位地址可以是絕對地址,也可以是符號地址。 例:ABC BIT P3.1
把P3.1位地址賦值給ABC,在后面的編程中,ABC即可作為位地址P3.1使用⒏BIT位定義偽指令
例1.
偽指令應(yīng)用
ORG8100H BUFFERDS10H DW“AB” DW100H,1ACH,-814說明:①從8100H至810FH為緩沖區(qū)空間 ②(8110H)=41H(‘A’) (8111H)=42H(‘B’) ③8112H單元起存放01H、00H、01H、ACH、FCH、D2H
4.280C51匯編語言程序設(shè)計(jì)
4.2.1順序結(jié)構(gòu)程序設(shè)計(jì)
例2.數(shù)據(jù)傳送和交換。將R0與R7內(nèi)容互換,R4與內(nèi)存20H單元內(nèi)容互換。
XCHR:MOV A,R0 XCH A,R7XCH A,R0;R0與R7內(nèi)容互換
MOV A,R4 XCH A,20HXCH A,R4 ;R4與20H單元內(nèi)容互換
設(shè)被加數(shù)存放于片內(nèi)RAM的20H(低位字節(jié))、21H(高位字節(jié)),加數(shù)存放于22H(低位字節(jié))和23H(高位字節(jié)),運(yùn)算結(jié)果的和數(shù)存放于20H(低位字節(jié))和21H(高位字節(jié))中。實(shí)現(xiàn)16位相加。START:PUSHACC ;將A中內(nèi)容進(jìn)棧保護(hù)
MOVR0,#20H ;將20H地址送R0MOVR1,#22H ;將22H地址值送R1 MOVA,@R0 ;被加數(shù)低字節(jié)內(nèi)容送A ADDA,@R1 ;低字節(jié)數(shù)相加
MOV@R0,A ;低字節(jié)數(shù)和存20H中例3.不帶符號多字節(jié)加法 INC R0 ;指向被加數(shù)高位字節(jié)21H
INCR1 ;指向加數(shù)高位字節(jié)
22H
MOVA,@R0 ;被加數(shù)高位字節(jié)送A
ADDCA,@R1 ;高字節(jié)數(shù)帶進(jìn)位相加
MOV@R0,A ;高字節(jié)數(shù)和存21H中
CLR A ADDC A,#00H MOV 10H,A ;進(jìn)位暫存于10H中
POP ACC ;恢復(fù)A原內(nèi)容
特點(diǎn):程序執(zhí)行流程中必然包含有條件判斷,符合條件要求和不符合條件要求分別有不同的處理路徑。在程序設(shè)計(jì)時(shí),往往借助程序框圖(判斷框)來指明程序的走向。一般情況下,每個(gè)分支均需單獨(dú)一段程序,在程序的起始地址賦予一個(gè)地址標(biāo)號,以便當(dāng)條件滿足時(shí)轉(zhuǎn)向指定地址單元去執(zhí)行,條件不滿足時(shí)仍順序往下執(zhí)行。4.2.2分支結(jié)構(gòu)程序設(shè)計(jì)
程序僅有兩個(gè)出口,兩者選一。 通常用條件判跳指令來選擇并轉(zhuǎn)移。可實(shí)現(xiàn)單分支程序轉(zhuǎn)移的指令有位條件轉(zhuǎn)移指令,如:JC、JNC、JB、JNB和JBC等,還有一些條件轉(zhuǎn)移指令,如:JZ、JNZ、DJNZ等。
有3種典型形式⒈單分支結(jié)構(gòu)單分支結(jié)構(gòu)示意圖
設(shè)對addrl,addrl+1的雙字節(jié)數(shù)取補(bǔ)后存入addr2和addr2十1單元中,其中高位字節(jié)在高地址單元中。8位微機(jī)對雙字節(jié)數(shù)取補(bǔ)需分兩次進(jìn)行。首先對低字節(jié)數(shù)取補(bǔ),然后判其結(jié)果是否為全“0”。若為“0”,則高字節(jié)數(shù)取補(bǔ);否則,高位字節(jié)數(shù)取反。START:MOVR0,#addrl ;原碼低字節(jié)地址碼送R0 MOV R1,#addr2 ;補(bǔ)碼低字節(jié)地址碼送R1 MOV A,@R0 ;原碼低字節(jié)內(nèi)容送A CPL A;按位取反 INC A ;A內(nèi)容取反加l,即取補(bǔ)
MOV @R1,A ;低字節(jié)補(bǔ)碼存addr2單元 例.
求雙字節(jié)補(bǔ)碼程序
INC R0;指向原碼高字節(jié)
INC R1 ;指向補(bǔ)碼高字節(jié)
JZ LOOP1
;當(dāng)(A)=0,轉(zhuǎn)LOOP1 MOV A,@R0 ;原碼高字節(jié)送A CPL A ;高字節(jié)內(nèi)容取反
MOV @R1,A ;字節(jié)反碼存(addr2十1)單元
SJMP LOOP2;轉(zhuǎn)LOOP2,結(jié)束LOOP1:MOVA,@R0;原碼高字節(jié)送A CPL A ;對高字節(jié)數(shù)取反
INC A;對高字節(jié)數(shù)取反 MOV @R1,A ;高字節(jié)補(bǔ)碼存(addr2+1)單元LOOP2:… END ;結(jié)束
多分支結(jié)構(gòu):程序的判別部分有兩個(gè)以上的出口流向。 分支結(jié)構(gòu)程序允許嵌套.即一個(gè)程序的分支又由另一個(gè)分支程序所組成,從而形成多級分支程序結(jié)構(gòu)。通常有兩種形式 ⒉多分支選擇結(jié)構(gòu)多分支結(jié)構(gòu)示意圖
80C51設(shè)有兩條多分支選擇指令:
散轉(zhuǎn)指令JMP@A+DPTR
散轉(zhuǎn)指令由數(shù)據(jù)指針DPTR決定多分支轉(zhuǎn)移程序的首地址,由累加器A中內(nèi)容動(dòng)態(tài)地選擇對應(yīng)的分支程序,可從多達(dá)256個(gè)分支中選一。
比較指令CJNEA,direct,rel
比較兩個(gè)數(shù)的大小,必然存在大于、等于、小于3種情況,這時(shí)就需從3個(gè)分支中選一。
另外,還可以使用查地址表的辦法、查轉(zhuǎn)移指令表的辦法或通過堆棧來實(shí)現(xiàn)多分支程序轉(zhuǎn)移。
由40H單元中動(dòng)態(tài)運(yùn)行結(jié)果值來選擇分支程序 (40H)=0,轉(zhuǎn)處理程序0
(40H)=1,轉(zhuǎn)處理程序1
(40H)=n,轉(zhuǎn)處理程序nSTART:MOVDPTR,addr16 ;多分支轉(zhuǎn)移指令表首址送 ;DPTRMOV A,40H ;40H單元內(nèi)容送ACLR C ;清CYRLC A ;A內(nèi)容左移一位例.通過查轉(zhuǎn)移指令表實(shí)現(xiàn)多分支程序轉(zhuǎn)移 JNC TABLE ;若CY=0,轉(zhuǎn)TABEL INC DPH ;若CY=l,DPH內(nèi)容+1TABEL:JMP@A十DPTR
;多分支轉(zhuǎn)移ADDR16:AJMPLOOP0 ;轉(zhuǎn)分支程序0AJMPLOOP1 ;轉(zhuǎn)分支程序1 …AJMPLOOPn ;轉(zhuǎn)分支程序n
由于選用絕對轉(zhuǎn)移指令A(yù)JMP,每條指令占用兩個(gè)字節(jié),因此,要求A中內(nèi)容為偶數(shù),在程序中將選擇參量(A中內(nèi)容)左移一位。如果最高位為1,則將它加到DPH中,這樣分支量可在0~255中選一。
CLR A ;結(jié)果單元20H~29H清零
MOV R0,#10 MOV R1,#20HLP:MOV @R1,A;20H~29H清零 INC R1 DJNZ R0,LP MOV R0,#100 ;100個(gè)數(shù)的計(jì)數(shù)器READ:MOVA,P1 ;讀入P1例.對從P1口輸入的100個(gè)0~9的數(shù)進(jìn)行概率統(tǒng)計(jì),統(tǒng)計(jì)的數(shù)值分別存入20H~29H中CHK0:CJNEA,
#0,
CHK1 ;比較,不為“0”,繼續(xù)比較
INC 20H ;是“0”,則“0”計(jì)數(shù)單元加1 SJMP END0 ;是否全部統(tǒng)計(jì)完?CHK1:CJNEA,
#1,
CHK2 INC 21H ;是“1”,則“1”計(jì)數(shù)單元加1 SJMP END0CHK2:CJNEA,
#2,
CHK3 INC 22H ;是“2”,則“2”計(jì)數(shù)單元加1 SJMP END0CHK3:CJNEA,#3,CHK4 INC 23H ;是“3”,則“3”計(jì)數(shù)單元加1 SJMP END0CHK4:CJNEA,
#4,
CHK5 INC 24H ;是“4”,則“4”計(jì)數(shù)單元加1 SJMP END0CHK5:CJNEA,
#5,
CHK6 INC 25H ;是“5”,則“5”計(jì)數(shù)單元加1 SJMP END0CHK6:CJNEA,
#6,
CHK7 INC 26H ;是“6”,則“6”計(jì)數(shù)單元加1 SJMP END0 CHK7:CJNEA,
7,
CHK8 INC 27H ;是“7”,則“7”計(jì)數(shù)單元加1 SJMP END0CHK8:CJNEA,
#8,
CHK9 INC 28H ;是“8”,則“8”計(jì)數(shù)單元加1 SJMP END0CHK9:CJNEA,
#9,
ERR INC 29H ;是“9”,則“9”計(jì)數(shù)單元加1END0:DJNZR0,
READ ;判是否全部統(tǒng)計(jì)完?HERE:SJMP HEREERR:… ;非0~9,出錯(cuò)4.2.3循環(huán)結(jié)構(gòu)程序設(shè)計(jì)計(jì)數(shù)循環(huán)結(jié)構(gòu)示意圖條件循環(huán)結(jié)構(gòu)示意圖⒈循環(huán)程序的4個(gè)部分
(1)循環(huán)初始化(2)循環(huán)體(3)循環(huán)控制(4)結(jié)束部分
計(jì)數(shù)循環(huán)程序的特點(diǎn)是循環(huán)次數(shù)已知,必須在初始化部分設(shè)定計(jì)數(shù)的初值,循環(huán)控制部分依據(jù)計(jì)數(shù)器的值決定循環(huán)次數(shù)。一般均設(shè)置為減“1”計(jì)數(shù)器,每循環(huán)一次自動(dòng)減“1”,直到回0時(shí)結(jié)束循環(huán)。
DJNZRn,rel
;以工作寄存器作控制計(jì)數(shù)器
DJNZdirect,rel
;以直接尋址單元作控制計(jì)數(shù)器
⒉計(jì)數(shù)控制循環(huán)結(jié)構(gòu)DELAY:MOVR2#data;預(yù)置計(jì)數(shù)循環(huán)控制常數(shù)DELAY1:DJNZR2,DELAY1
;當(dāng)(R2)≠0,轉(zhuǎn)向本身 RET根據(jù)R2的不同初值(0~FFH),可實(shí)現(xiàn)4~514個(gè)機(jī)器周期的延時(shí)
例.軟件延時(shí)結(jié)束條件:可以是搜索到某個(gè)參數(shù)(比如回車符“CR”),也可以是發(fā)生的某種變化(如故障引起電路電平變化)等,什么時(shí)侯結(jié)束循環(huán)是不可預(yù)知的。一般常用比較轉(zhuǎn)移指令或條件判跳指令進(jìn)行控制和實(shí)現(xiàn)。
⒊條件控制循環(huán)結(jié)構(gòu)
把內(nèi)部RAM中起始地址為DATA的數(shù)據(jù)串傳送到外部RAM以BUFFER為首地址的區(qū)域,直到發(fā)現(xiàn)“$”字符的ASCII碼為止,數(shù)據(jù)串的最大長度在內(nèi)存20H中。
MOV R0,#DATA ;數(shù)據(jù)區(qū)首地址
MOV DPTR,#BUFFER ;數(shù)據(jù)區(qū)長度指針LOOP:MOVA,@R0 CJNE A,#24H,LOOP2 ;判是否為“$”符(24H) SJMP LOOP1 ;是“$”符,則結(jié)束LOOP2:MOVA,@R0 ;不是“$”符,則傳送
MOVX@DPTR,A例
INC R0
INC DPTR
DJNZ20H,LOOP ;數(shù)據(jù)串未查完,繼續(xù)LOOP1:…注:一個(gè)是條件循環(huán)控制,以找到ASCII碼“$”符為循環(huán)結(jié)束條件;笫二個(gè)是計(jì)數(shù)循環(huán)結(jié)構(gòu),萬一找不到ASCII碼“$”符,則由數(shù)據(jù)串的最大長度作為計(jì)數(shù)循環(huán)控制。
⒋循環(huán)嵌套結(jié)構(gòu)
循環(huán)內(nèi)套循環(huán),也稱多重循環(huán)。循環(huán)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年冷鏈物流溫控技術(shù)與冷鏈物流冷鏈運(yùn)輸企業(yè)冷鏈運(yùn)輸成本分析與優(yōu)化報(bào)告
- 產(chǎn)品雜志管理制度
- 產(chǎn)品結(jié)凍管理制度
- 產(chǎn)品運(yùn)營管理制度
- 產(chǎn)房出入管理制度
- 產(chǎn)權(quán)監(jiān)督管理制度
- 會(huì)所吧臺(tái)管理制度
- 京東會(huì)計(jì)管理制度
- 京東招采管理制度
- 京東項(xiàng)目管理制度
- 網(wǎng)絡(luò)輿情分析模型-全面剖析
- 課題申報(bào)書:生成式人工智能賦能高校體育教師教學(xué)能力的內(nèi)在機(jī)理與實(shí)踐路徑研究
- 信譽(yù)樓管理制度特色
- 登山安全培訓(xùn)課件內(nèi)容
- 防沙治沙光伏一體化技術(shù)方案設(shè)計(jì)
- 2025年春新北師大版生物七年級下冊課件 第11章 人體的運(yùn)動(dòng) 第1節(jié) 人體的骨骼
- 便攜式移動(dòng)電源規(guī)范
- 實(shí)驗(yàn)室生物安全評估制度(4篇)
- 【MOOC】《電路原理》(東北大學(xué))中國大學(xué)慕課答案
- 兒康家長培訓(xùn)內(nèi)容
- 2024年商城縣人民醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點(diǎn)附帶答案
評論
0/150
提交評論