匯編軟件MASM和調(diào)試_第1頁(yè)
匯編軟件MASM和調(diào)試_第2頁(yè)
匯編軟件MASM和調(diào)試_第3頁(yè)
匯編軟件MASM和調(diào)試_第4頁(yè)
匯編軟件MASM和調(diào)試_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、13匯編軟件masm和調(diào)試 工具軟件debug使用匯編語(yǔ)言是唯一能夠充分利用計(jì)算機(jī)硬件特性并直接控制硬件設(shè)備的語(yǔ)言。對(duì)于諸如實(shí)時(shí)控制、軟件加密解密、病毒分析、軟件調(diào)試等領(lǐng)域,匯編語(yǔ)言是最有效的程序設(shè)計(jì)語(yǔ)言。在學(xué)習(xí)匯編語(yǔ)言的過(guò)程中,只有通過(guò)大量的上機(jī)實(shí)驗(yàn)才能更好地掌握匯編語(yǔ)言程序設(shè)計(jì)的技能。1.1 實(shí) 驗(yàn) 目 的(1)掌握匯編軟件masm的使用,熟悉匯編語(yǔ)言的上機(jī)過(guò)程。(2)掌握調(diào)試工具軟件debug的應(yīng)用,掌握匯編語(yǔ)言程序的調(diào)試技能。1.2 相關(guān)基礎(chǔ)知識(shí)1.2.1 匯編語(yǔ)言程序上機(jī)步驟1匯編語(yǔ)言程序設(shè)計(jì)上機(jī)步驟匯編語(yǔ)言源程序的上機(jī)步驟包括編輯、匯編、鏈接、調(diào)試等幾個(gè)過(guò)程,如圖1-1所示。圖1.

2、1 匯編語(yǔ)言源程序上機(jī)步驟源程序文件的編輯就是編寫一個(gè)匯編語(yǔ)言源程序,它可以使用任何一個(gè)文件編輯器實(shí)現(xiàn)。例如,windows 2000操作系統(tǒng)附件中的記事本。編輯形成的文件最后一定要以.asm后綴保存。在編輯源程序的時(shí)候一定要將輸入法切換到英文環(huán)境下,否則會(huì)出錯(cuò)。2匯編匯編是把用匯編語(yǔ)言編寫的源代碼程序翻譯成計(jì)算機(jī)能夠識(shí)別的二進(jìn)制機(jī)器語(yǔ)言程序。目前常用的匯編程序是masm,稱為宏匯編程序。宏匯編程序當(dāng)前主要有兩個(gè)版本:masm5.0和masm6.0。其中,masm5.0的可執(zhí)行文件是masm.exe,masm5.0用于dos環(huán)境下。初學(xué)者首先學(xué)習(xí)使用masm5.0。而masm6.0的可執(zhí)行文件

3、是ml.exe。匯編過(guò)程是將源程序翻譯為等價(jià)的二進(jìn)制機(jī)器語(yǔ)言的過(guò)程。所產(chǎn)生的文件稱為目標(biāo)程序,其后綴為.obj。在這個(gè)階段中,將對(duì)源程序的語(yǔ)法進(jìn)行檢驗(yàn),如果發(fā)現(xiàn)錯(cuò)誤將給予提示。錯(cuò)誤提示分為嚴(yán)重錯(cuò)誤和警告錯(cuò)誤兩種。嚴(yán)重錯(cuò)誤指示某些指令存在語(yǔ)法錯(cuò)誤,不能形成對(duì)應(yīng)的二進(jìn)制機(jī)器指令。而警告錯(cuò)誤指示某些指令含義不夠明確,需要提醒程序員注意。程序員可以根據(jù)提示對(duì)源程序進(jìn)行修改,直到得到正確的結(jié)果為止。在匯編過(guò)程中還會(huì)產(chǎn)生列表文件和交叉引用文件。列表文件的后綴為.lst,主要用于給出源程序和機(jī)器代碼程序的清單,以供檢查程序使用。交叉引用文件的后綴為.crf,它是一個(gè)為源程序所引用的各種符號(hào)進(jìn)行前后對(duì)照的文件

4、,主要用于給出不同程序段中互相引用的全部符號(hào)列表。這兩個(gè)文件是可有可無(wú)的,如果不需要生成這兩個(gè)文件,可以在匯編過(guò)程中加以控制。3鏈接在匯編過(guò)程中形成了目標(biāo)文件(.obj),但是在該文件中,只是將源程序的操作碼部分變成了機(jī)器碼,而地址操作數(shù)還是可浮動(dòng)的相對(duì)地址,不是實(shí)際地址,浮動(dòng)地址需要再定位。只有經(jīng)過(guò)鏈接過(guò)程才能形成最后的可執(zhí)行文件。鏈接程序的功能就是把一個(gè)或多個(gè)目標(biāo)文件合并成一個(gè)可執(zhí)行文件,其后綴為.exe。其實(shí)在鏈接過(guò)程中一共形成兩個(gè)文件:第一個(gè)是可執(zhí)行文件(.exe)。默認(rèn)的可執(zhí)行文件名字與源程序文件相同,也可以根據(jù)用戶要求進(jìn)行修改可執(zhí)行文件的名字;鏈接過(guò)程中形成的第二個(gè)文件是內(nèi)存映像文

5、件(.map),它給出了每個(gè)段的地址分配情況和長(zhǎng)度。如果不需要該文件則可以在鏈接命令執(zhí)行時(shí)直接輸入enter鍵。在鏈接過(guò)程中還與一個(gè)庫(kù)文件(.lib文件)相關(guān)。一般的匯編程序不需要庫(kù)文件。但是當(dāng)匯編語(yǔ)言與高級(jí)語(yǔ)言(如c語(yǔ)言)接口時(shí)需要用到庫(kù)文件。此時(shí)輸入相應(yīng)的庫(kù)文件名字即可。4運(yùn)行通過(guò)匯編和鏈接,最終形成的可執(zhí)行文件已經(jīng)排出了程序中的語(yǔ)法錯(cuò)誤,可以直接執(zhí)行。但是可能還存在一些算法錯(cuò)誤,這樣的錯(cuò)誤則要通過(guò)調(diào)試過(guò)程來(lái)修正。常用的調(diào)試工具軟件有debug等。5匯編語(yǔ)言上機(jī)舉例例 編寫一個(gè)名字為abcd.asm的源程序,該程序的功能是在計(jì)算機(jī)屏幕上顯示一個(gè)字符串“hello!”。1)編輯源程序利用wi

6、ndows 2000操作系統(tǒng)附件中的“記事本”編輯如下源程序。datasegments1db'hello!','$'dataendsstacksegmentpara stackdb 64 dup(?)stackendscodesegmentmain proc farassumecs:code,ds:data,ss:stackstart:push ds mov ax,0 push ax mov ax,data mov ds,ax mov ax,stack mov ss,ax mov ah,09h mov dx,offset s1 int 21hretmain en

7、dpcode ends end start2)匯編在masm5.0中的匯編程序是masm.exe。其命令格式為:c:masm abcd.asm¿執(zhí)行上述操作命令之后將在屏幕上顯示如下信息:microsoft(r) macro assembler version 5.00copyright(c) microsoft corp 1981-1985,1987.all rights reservedobject filenameabcd.obj:¿source listingnul.lst:¿cross referencenul.crf:¿50678 + 410

8、090 bytes symbol space free0 warning errors0 severe errors在匯編過(guò)程中產(chǎn)生了三個(gè)文件,其默認(rèn)的文件名顯示在屏幕上,如果不需要做任何改變就直接按enter鍵。通過(guò)屏幕上的顯示,可以了解到在本次匯編過(guò)程中沒(méi)有發(fā)生錯(cuò)誤和警告,因此可以繼續(xù)進(jìn)行鏈接操作。3)鏈接在masm5.0中的匯編程序是link.exe。其命令格式為:c:link abcd¿執(zhí)行上述命令后將在屏幕上顯示如下信息:microsoft(r) overlay linker version 3.6copyright(c) mirosoft corp 1983-1987.a

9、ll rights reservedrun fileabcd.exelist filenul.map:libraries.lib:在鏈接過(guò)程中產(chǎn)生了兩個(gè)文件,其默認(rèn)的文件名顯示在屏幕上,如果不需要做任何改變就直接按enter鍵。對(duì)于庫(kù)文件一欄,如果不需要使用庫(kù)文件,可以直接按enter鍵;如果需要使用庫(kù)文件,則要求輸入所使用的庫(kù)文件名字。4)運(yùn)行其命令格式為:c:abcd¿在屏幕上就可以看到“hello!”的字樣了。1.2.2 調(diào)試工具軟件debug如果匯編語(yǔ)言的源程序中存在一些語(yǔ)法或格式上的錯(cuò)誤,在匯編和鏈接過(guò)程中都可以被發(fā)現(xiàn)并得到糾正。但是如果在源程序中存在著算法錯(cuò)誤和邏輯錯(cuò)誤,

10、那就只有在調(diào)試過(guò)程中才能發(fā)現(xiàn)并糾正了。常用的調(diào)試工具軟件是debug。debug提供了修改寄存器和內(nèi)存單元內(nèi)容的命令,可以很方便地修改寄存器、內(nèi)存單元的內(nèi)容,為調(diào)試程序、修改程序帶來(lái)了方便。在debug狀態(tài)下,還提供了調(diào)試、控制測(cè)試的環(huán)境。用戶可以在此環(huán)境下進(jìn)行編輯、調(diào)試和執(zhí)行等一些簡(jiǎn)單的匯編程序。debug有顯示命令,通過(guò)顯示命令,可以觀察某個(gè)內(nèi)存單元的內(nèi)容、cpu內(nèi)部某個(gè)寄存器的內(nèi)容,并可以根據(jù)這些內(nèi)容的變化情況分析、調(diào)試程序。1debug的啟動(dòng)假設(shè)在windows 2000的環(huán)境下,通過(guò)選擇“程序”“附件”“命令提示符”進(jìn)入dos狀態(tài)。然后輸入:debug drive:path

11、 filename parameters¿ 即可進(jìn)入debug環(huán)境。其中,drive:path filename:指定要測(cè)試的可執(zhí)行文件的位置和名稱。 parameters:指定所需要的命令。如果已經(jīng)進(jìn)入存放debug文件的目錄下,則可以使用簡(jiǎn)化的命令進(jìn)入debug。簡(jiǎn)化命令的格式為:debug¿。進(jìn)入debug后,顯示debug的提示符號(hào),該提示符號(hào)為連字符 (-)。2debug的主要命令這里只介紹常用到的幾個(gè)主要debug命令,全部的debug命令請(qǐng)參考相關(guān)文獻(xiàn)。1)a(匯編命令)該命令的功能是從匯編語(yǔ)言程序語(yǔ)句創(chuàng)建可執(zhí)行的機(jī)器碼。所有數(shù)值

12、都是十六進(jìn)制格式,必須按14個(gè)字符輸入這些數(shù)值。命令格式:a address參數(shù)address是指定輸入?yún)R編語(yǔ)言指令的位置。對(duì) address 使用十六進(jìn)制值,但是輸入十六進(jìn)制地址時(shí)不能以h字符結(jié)尾。如果不指定地址,執(zhí)行a命令后將在它上次停止處的地址開始匯編。a命令使用舉例如下。-a 0100:0500   0100:0500 mov al,050100:0502 jmp  near 5050100:0505 jmp  far 50am2)c(比較命令)該命令的功能是比較內(nèi)存的兩個(gè)區(qū)域

13、存放的內(nèi)容。命令格式為:c range address參數(shù)range指定要比較的內(nèi)存第一個(gè)區(qū)域的起始和結(jié)束地址,或起始地址和長(zhǎng)度。參數(shù)address指定要比較的第二個(gè)內(nèi)存區(qū)域的起始地址。c命令使用舉例如下。-c 100,10f 300該命令對(duì) 100h10fh 的內(nèi)存數(shù)據(jù)塊與300h30fh的內(nèi)存數(shù)據(jù)塊進(jìn)行比較。debug 響應(yīng)前面的命令并顯示如下信息(假定此時(shí) ds = 197f):197f:0100 4d e4 197f:0300   197f:0101

14、0;67 99 197f:0301   197f:0102 a3 27 197f:0302   197f:0103 35 f3 197f:0303   197f:0104 97 bd 197f:0304   197f:0105 04 35 197f:0305   197f:0107 76 71 197f:0307 &#

15、160; 197f:0108 e6 11 197f:0308   197f:0109 19 2c 197f:0309   197f:010a 80 0a 197f:030a   197f:010b 36 7f 197f:030b   197f:010c be 22 197f:030c   197f:010d 83 93 

16、;197f:030d   197f:010e 49 77 197f:030e   197f:010f 4f 8a 197f:030f   注意:列表中缺少地址197f:0106和197f:0306,這表明地址中的數(shù)據(jù)值是相同的。3)d(顯示內(nèi)存命令)該命令的功能是顯示一定范圍內(nèi)存地址的內(nèi)容。命令格式:d range參數(shù)range指定要顯示其內(nèi)容的內(nèi)存區(qū)域的起始和結(jié)束地址,或起始地址和長(zhǎng)度。如不指定range,將從以前d命令中所指定地址范圍末尾開始顯示128字節(jié)的內(nèi)容

17、。d命令舉例如下。-d cs:100 10f   debug按以下格式顯示范圍中的內(nèi)容:04ba:0100 54 4f 4d 00 53 41 57 59-45 52 00 00 00 00 00 00 tom.sawyer.當(dāng)使用d命令時(shí),debug以兩個(gè)部分顯示內(nèi)存內(nèi)容:十六進(jìn)制部分(每個(gè)字節(jié)的值都用十六進(jìn)制格式表示)和ascii碼部分(每個(gè)字節(jié)的值都用 ascii 碼字符表示)。每

18、個(gè)非打印字符在顯示的 ascii 部分由英文句號(hào)(.)表示。每個(gè)顯示行顯示 16 字節(jié)的內(nèi)容,其中在第8和第9字節(jié)之間有一個(gè)連字符。每個(gè)顯示行從 16 字節(jié)的邊界上開始。   4)g(運(yùn)行命令)該命令功能是運(yùn)行當(dāng)前在內(nèi)存中的程序。  命令格式:g =address breakpoints  參數(shù)address指定當(dāng)前在內(nèi)存中要開始執(zhí)行的程序地址。如果不指定 address參數(shù),將從cs:ip寄存器中的當(dāng)前地址開始執(zhí)行程序。  

19、 參數(shù)breakpoints為g命令設(shè)置的臨時(shí)斷點(diǎn)。如果命令中有指定斷點(diǎn)參數(shù),則程序在遇到的第一個(gè)斷點(diǎn)處停止,當(dāng)程序到達(dá)斷點(diǎn)時(shí),debug 將顯示所有寄存器的內(nèi)容、所有標(biāo)記的狀態(tài)以及最后執(zhí)行指令的解碼形式。5)q(退出命令)該命令功能是該停止 debug 會(huì)話,返回到命令提示符。   命令格式:q參數(shù):無(wú)。6)r(寄存器顯示命令)該命令功能是顯示或改變一個(gè)或多個(gè) cpu 寄存器的內(nèi)容。   r register-name   參數(shù):無(wú)。如果在沒(méi)有參數(shù)的情況下使用,則 

20、;r 命令顯示所有寄存器的內(nèi)容以及寄存器存儲(chǔ)區(qū)域中的標(biāo)志。參數(shù):register-name  指定要顯示其內(nèi)容的寄存器名。 舉例如下。要查看所有寄存器的內(nèi)容、所有標(biāo)記的狀態(tài)和當(dāng)前位置的指令解碼表,請(qǐng)輸入以下 命令:r如果當(dāng)前位置是 04ba:011a,顯示結(jié)果將類似如下:ax=0e00 bx=00ff cx=0007 dx=01ff sp=039d bp=0000 si=005c di=0000   ds=04ba es=04ba ss

21、=04ba cs=o4ba ip=011a nv up di ng nz ac pe nc  04ba:011a cd21 int 21  如果只想查看標(biāo)志的狀態(tài),請(qǐng)輸入以下命令:rfdebug按以下格式顯示信息:nv up di ng nz ac pe nc - _   7)t(跟蹤命令)該命令功能是執(zhí)行一條指令,并

22、顯示所有寄存器的內(nèi)容、所有標(biāo)志的狀態(tài)和所執(zhí)行指令的源代碼形式。命令格式:t =address number   參數(shù)=address指定debug啟動(dòng)跟蹤指令的地址。如果省略address參數(shù),跟蹤將從當(dāng)前cs:ip寄存器所指定的地址開始。參數(shù)number指定要跟蹤的指令數(shù)。該值必須是十六進(jìn)制數(shù),默認(rèn)值為1。舉例如下。要執(zhí)行一個(gè)指令(cs:ip 指向的指令),然后顯示寄存器的內(nèi)容、標(biāo)志的狀態(tài)以及指令的解碼形式,請(qǐng)輸入以下命令: t如果程序中的指令位于 04ba:011a,debug 可能顯示下列信息: a

23、x=0e00 bx=00ff cx=0007 dx=01ff sp=039d bp=0000 si=005c di=0000 ds=04ba es=04ba ss=04ba cs=o4ba ip=011a nv up di ng nz ac pe nc 04ba:011a cd21 int 21  8)u(反匯編命令)該命令功能是反匯編字

24、節(jié)并顯示相應(yīng)的原語(yǔ)句,其中包括地址和字節(jié)值。反匯編代碼像已匯編文件的列表。  命令格式:u range  參數(shù)無(wú)。如果在沒(méi)有參數(shù)的情況下使用,則u命令將反匯編20h字節(jié)的內(nèi)容(默認(rèn)值),從前面u命令所顯示地址后的第一個(gè)地址開始。參數(shù)range指定要反匯編代碼的起始地址和結(jié)束地址,或起始地址和長(zhǎng)度。  舉例如下。要反匯編16(10h)字節(jié),從地址 04ba:0100 開始,請(qǐng)輸入以下命令: u04ba:010010  debug 按以下格式顯示結(jié)果: 04b

25、a:0100 206472 and si+72,ah  04ba:0103 69 db 69  04ba:0104 7665 jbe 016b   04ba:0106 207370 and bp+di+70,dh  04ba:0109 65 db 65   04ba:010a 63 db 63  0

26、4ba:010b 69 db 69  04ba:010c 66 db 66  04ba:010d 69 db 69  04ba:010e 63 db 63  04ba:010f 61 db 61  1.3 匯編語(yǔ)言上機(jī)實(shí)驗(yàn)實(shí)驗(yàn)1.1 設(shè)數(shù)據(jù)段字節(jié)變量s0中存放一個(gè)非壓縮型bcd碼,將其轉(zhuǎn)為ascii碼,并顯示在屏幕上。1分析所謂非壓縮bcd碼就是每

27、字節(jié)只存放一個(gè)bcd碼,該字節(jié)的低4位為bcd碼,而高4位為0000。bcd碼不能直接用于屏幕顯示和打印,必須將其轉(zhuǎn)換為ascii碼。非壓縮bcd碼轉(zhuǎn)換為ascii碼的算法很簡(jiǎn)單,就是在非壓縮bcd碼上加上30h。2實(shí)驗(yàn)步驟(1)調(diào)用文本編輯軟件建立源程序.asm文件。利用windows 2000操作系統(tǒng)附件中的“記事本”編輯以下源程序。命名為test1.asm。datasegments0db1;待顯示的bcd碼dataendsstacksegmentpara stackdb 64 dup(?)stackendscode segmentmain proc farassumecs:code,ds

28、:data,ss:stackstart:push dsmov ax,0push axmov ax,datamov ds,axmov ax,stackmov ss,axmov al,s0add al,30hmov dl,almov ah,02hint 21hret mainendpcode ends endstart(2)調(diào)用匯編程序masm對(duì)源程序匯編產(chǎn)生.obj文件。在c:>提示符下輸入masm test1.asm¿執(zhí)行上述操作命令之后將在屏幕上顯示如下信息:microsoft(r) macro assembler version 5.00copyright(c) micro

29、soft corp 1981-1985,1987.all rights reservedobject filenametest1.obj:¿source listingnul.lst:¿cross referencenul.crf:¿50678 + 410090 bytes symbol space free0 warning errors0 severe errors(3)調(diào)用鏈接程序link對(duì)目標(biāo)文件進(jìn)行鏈接產(chǎn)生可執(zhí)行文件。在c:>提示符下輸入link test1¿執(zhí)行上述命令后將在屏幕上顯示如下信息:microsoft(r) overlay

30、linker version 3.6copyright(c) microsoft corp 1983-1987.all rights reservedrun filetest1.exelist filenul.map:libraries.lib:(4)運(yùn)行可執(zhí)行文件。在c:>提示符下輸入test1¿,在屏幕上將顯示出1。(5)改變s0的內(nèi)容(數(shù)字范圍要限制在09之間),重新做這個(gè)實(shí)驗(yàn)。實(shí)驗(yàn)1.2 設(shè)數(shù)據(jù)段變量s1中存放一個(gè)小寫英文字符'a',要求將其轉(zhuǎn)為大寫英文字符,并顯示在屏幕上。試編寫一段程序并運(yùn)行該程序從而完成上述要求。提示:小寫英文字符的ascii碼和大

31、寫英文字符的ascii碼之間存在一個(gè)差值。1.4 應(yīng)用debug軟件調(diào)試程序?qū)嶒?yàn)實(shí)驗(yàn)1.3 常用的debug命令使用練習(xí)。實(shí)驗(yàn)步驟1)進(jìn)入debug環(huán)境在windows 2000環(huán)境下,按順序選擇“開始”“程序”“附件”“命令提示符”后進(jìn)入dos環(huán)境,輸入debug后即可進(jìn)入debug,此時(shí)屏幕上顯示“_”提示符號(hào)。2)a(編輯命令)使用練習(xí)用debug的a命令輸入程序。_a100¿0357:0100moval,340357:0102movdl,360357:0104adddl,al0357:0106subdl,320357:0109movah,20357:010bint 21035

32、7:010dint200357:010f¿輸入a命令時(shí),自動(dòng)產(chǎn)生程序所存內(nèi)存單元的段地址和偏移地址。程序輸入結(jié)束時(shí),只需輸入enter鍵就可以退出匯編狀態(tài)(a狀態(tài)),回到debug狀態(tài)。注意:使用a命令時(shí),只要注意起始地址的偏移地址從0100開始即可。至于前面的段地址是隨機(jī)變化的(取決于當(dāng)前內(nèi)存使用情況),對(duì)此不必介意。3)c(比較命令)使用練習(xí)首先利用a命令輸入以下內(nèi)容。_a100¿0357:0100moval,340357:0102movdl,360357:0104adddl,al0357:0106subdl,320357:0109moval,340357:010bmo

33、vdl,360357:010dadddl,al0357:010fsubdl,300357:0112¿然后利用c命令對(duì)01000108與01090112兩個(gè)區(qū)域內(nèi)存存放的內(nèi)容進(jìn)行比較。-c 100,108 109該命令執(zhí)行后將顯示兩塊存儲(chǔ)區(qū)域存放內(nèi)容不一致的那些單元。4)d(顯示內(nèi)存命令)使用練習(xí)首先利用a命令輸入以下內(nèi)容。_a100¿0357:0100dw 01000357:0102dw 03020357:0104dw 05040357:0106dw 07060357:0108dw 09080357:010adw 0b0a0357:010cdw 0d0c0357:010edw 0f0e0357:0110之后利用d命令查看該區(qū)域內(nèi)容。_d1005)r(寄存器顯示命令)使用練習(xí)首先利用a命

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論