版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
匯編語言程序設(shè)計(jì)指導(dǎo)書
禹定臣
去油學(xué)院信息工程學(xué)院2024.02
目錄
試驗(yàn)一調(diào)試程序DEBUG及8086指令運(yùn)用..............3
試驗(yàn)?zāi)康模?.............................................................................3
內(nèi)容及步驟:...........................................................................3
試駿報(bào)告要求:.........................................................................4
附:DEBUG吩咐詳解.....................................................................5
試驗(yàn)二內(nèi)存操作數(shù)及尋址方法..........................21
試險(xiǎn)目的:..........................................................................................................................................21
試驗(yàn)內(nèi)容和步驟:......................................................................21
試驗(yàn)報(bào)告要求:........................................................................23
試驗(yàn)三數(shù)據(jù)串傳送和查表程序..........................23
試驗(yàn)?zāi)康模?............................................................................23
試臉內(nèi)容及步驟:......................................................................23
試險(xiǎn)報(bào)告要求:........................................................................25
試驗(yàn)四屏幕字符顯示程序...............................26
試驗(yàn)?zāi)康模?............................................................................26
試臉內(nèi)容及步驟:......................................................................26
試驗(yàn)報(bào)告要求:........................................................................27
試驗(yàn)五二進(jìn)制數(shù)顯示成十六進(jìn)制數(shù)的屏幕字符顯示程序...................................28
試驗(yàn)?zāi)康模?............................................................................28
試臉內(nèi)容及步驟:......................................................................28
試驗(yàn)報(bào)告要求;........................................................................29
試驗(yàn)六查表指令及子程序嵌套試驗(yàn)......................29
試駿目的:.............................................................................29
試驗(yàn)內(nèi)容及步驟:......................................................................29
試臉報(bào)告要求:........................................................................32
試驗(yàn)七8255接口電路試驗(yàn)..............................33
試驗(yàn)要求:...........................................................................33
試驗(yàn)?zāi)康模?..........................................................................33
試臉說明:...........................................................................33
試驗(yàn)電路:.............................................................................33
試駿程序:...........................................................................34
試驗(yàn)一調(diào)試程序DEBUG及8086指令運(yùn)用
試驗(yàn)?zāi)康模?/p>
通過試驗(yàn)駕馭下列學(xué)問:
1、8086指令:MOV,ADD,ADC,SUB,SBB,DAA,XCHG
3、DEBUG吩咐:A,D,E,G,Q,R,T,U,F,H。
4、BCD碼,ASCII碼及用16進(jìn)制數(shù)表示二進(jìn)制碼的方法。
5、8086寄存器:AX,BX,CX,DX,F,IP。
內(nèi)容及步驟:
一、DEBUG吩咐運(yùn)用:
1、打DEBUG進(jìn)入DEBUG限制,顯示提示苻
2s用吩咐F10010F'A'將'A'的ASCH碼填入內(nèi)存。
3、用吩咐D10010F視察內(nèi)存中的16進(jìn)制碼及屏幕右邊的ASCII字符。
4、用吩咐F11011F41重復(fù)上二項(xiàng)試驗(yàn),視察結(jié)果并比較。
5、用吩咐E100303132……3F將3OH-3FH寫入地址為100起先的內(nèi)存
單元中,再用D吩咐視察結(jié)果,看鍵入的16進(jìn)制數(shù)是什么字符的ASCII碼?
6、用H吩咐檢查下列各組16進(jìn)制數(shù)加減結(jié)果并和你的手算結(jié)果比較:
(1)3411,2211(2)56117811(3)A5,7911(4)1284H,567811(5)A758,347FII
7、用R吩咐檢查各寄存器內(nèi)容,特殊留意AX,BX,CX,DX,IP及標(biāo)記位中ZF,CF
和AF的內(nèi)容。
8、用R吩咐將AX,BX內(nèi)容改寫為1050H及23A8H。
二、8086/8088常用指令練習(xí)
1、傳送指令
1)用A吩咐在內(nèi)存100H處鍵入卜.列內(nèi)容:
MOVAX,1234
MOVBX,5678
XCHGAX,BX
MOVAH,35
MOVAL,48
MOVDX,75AB
XCHGAX,DX
2)用U吩咐檢查鍵入的程序并記錄,特殊留意左邊的機(jī)器碼。
3)用T吩咐逐條運(yùn)行這些指令,每運(yùn)行一行檢查并記錄有關(guān)寄存器及IP的變更狀況。并留
意標(biāo)記位有無變更.
2、加減法指令:
1)用A吩咐在內(nèi)存100H處鍵入下列內(nèi)容:
MOVAH,34
MOVAL,22
ADDAL,AH
SUBAL,78
MOVCX,1284
MOVDX,5678
ADDCX,DX
SUBCX,AX
SUBex,ex
2)用U吩咐檢查鍵入的程序及對應(yīng)的機(jī)器碼。
3)用T吩咐逐條運(yùn)行這些指令,檢查并記錄有關(guān)寄存器及ZF狀況。
思索:這次運(yùn)行還是打入T,行不行?怎么辦?用R吩咐檢查?下IP的內(nèi)容。留意T吩咐與IP
的關(guān)系。
3、帶進(jìn)位加減法:
1)用A吩咐在內(nèi)存200H處鍵入下列內(nèi)容,并用U吩咐檢查:
MOVAll,12
MOVAL,84
MOVCH,56
MOVCL,78
ADDAL,CL
ADCAH,CH
MOVDH,A7
MOVDL,58
SUBDL,7F
SBBDH,34
2)用T吩咐逐條運(yùn)行這些指令,檢查并記錄有寄存器及CF內(nèi)容。
3)上面這段程序若改用16位操作指令達(dá)到同樣結(jié)果,怎么改?試修改并運(yùn)行之。
4、BCD碼加減法
1)內(nèi)容:
MOVAL,58
ADDAL,25
DAA
2)要求:用A吩咐鍵入,U吩咐檢查,T吩咐逐條運(yùn)行并記錄有關(guān)寄存器及AF內(nèi)容。
試驗(yàn)報(bào)告要求:
1、16進(jìn)制數(shù)加減法手算結(jié)果及試驗(yàn)結(jié)果
2、8086/8088常用指令練習(xí)部分的逐條運(yùn)行記錄,思索結(jié)果及自編程序運(yùn)行記錄(列出
自編程序)。
附:Debug吩咐詳解
1、Debug:A(匯編)
干脆將8086/8087/8088記憶碼合并到內(nèi)存。該吩咐從匯編語言語句創(chuàng)建可執(zhí)
行的機(jī)器碼。全部數(shù)值都是十六進(jìn)制格式,必需按一到四個(gè)字符輸入這些數(shù)值。
在引用的操作代碼(操作碼)前指定前綴記憶碼。
a[address]
參數(shù)address指定鍵入?yún)R編語言指令的位置。對address運(yùn)用十六進(jìn)制值,并健入
不以“h”字符結(jié)尾的每個(gè)值。假如不指定地址,a將在它上次停止處起先匯編
范例
a吩咐支持全部形式的間接注冊吩咐,如下例所示:
addbx,34[bp+2].[si-l]
pop[bp+dij
push[si])
還支持全部操作碼同義詞,如下例所示:
loopz100
loope100
ja200
jnbe200
對于8087操作碼,必需指定wait或fwait前綴,如下例所示:
fwaitfaddst,st(3);thislineassembles
;anfwaitprefix
說明
運(yùn)用記憶碼
段的替代記憶碼為cs:、ds:、es:和ss:0遠(yuǎn)程返回的記憶碼是retf。字符串處
理的記憶碼必需明確聲明字符串大小。例如,運(yùn)用movsw可以移動(dòng)16位的字串,
運(yùn)用mov***(文字因故被系統(tǒng)屏蔽)***(文字因故被系統(tǒng)屏蔽)可以移動(dòng)8位
字節(jié)串。
匯編跳轉(zhuǎn)和調(diào)用
匯編程序依據(jù)字節(jié)替換自動(dòng)將短、近和遠(yuǎn)的跳轉(zhuǎn)及調(diào)用匯編到目標(biāo)地址。通
過運(yùn)用near或far前綴可以替代這樣的跳轉(zhuǎn)或調(diào)用,如下例所示:
-aO100:0500
()100:0500jmp502;a2-byteshortjump
0100:0502jmpnear505;a3-bytenearjump
0100:0505jmpfar50a;a5-bytefarjump
可以將near前綴緡寫為ne。
區(qū)分字和字節(jié)內(nèi)存位置
當(dāng)某個(gè)操作數(shù)可以引用某個(gè)字內(nèi)存位置或者字節(jié)內(nèi)存位置時(shí),必需用前
綴wordptr或者前綴bytepu?指定數(shù)據(jù)類型??山邮艿目s寫分別是w。和by。以
下范例顯示兩種格式:
decwo[si]
negbyteptr[128]
指定操作數(shù)
Debug運(yùn)用包括在中括號(口)的操作數(shù)引用內(nèi)存地址的習(xí)慣用法。這是因?yàn)?/p>
另一方面Debug不能區(qū)分馬上操作數(shù)和內(nèi)存地址的操作數(shù)。以下范例顯示兩種
格式:
movax,21;loadAXwith21h
movax,[21];loadAXwiththe
;contentsof
;memorylocation21h
運(yùn)用偽指令
運(yùn)用a吩咐供應(yīng)兩個(gè)常用的偽指令:db操作碼,將字節(jié)值干脆匯編到內(nèi)存,
dw操作碼,將字值干脆匯編到內(nèi)存。以下是兩個(gè)偽指令的范例:
db1,2,3,4,“THISISANEXAMPLE11
dbTHISISAQUOTATIONMARK:"
db"THISISAQUOTATIONMARK:"
dw1000,2000,3000;'BACH"
2、Debug(轉(zhuǎn)儲(chǔ))
顯示肯定范圍內(nèi)存地址的內(nèi)容。
d[range]
參數(shù)
range
指定要顯示其內(nèi)容的內(nèi)存區(qū)域的起始和結(jié)束地址,或起始地址和長度。有關(guān)
有效的range值的信息,請單擊“相關(guān)主題”列表中的“Debug說明"。假如不
指定range,Debug程序?qū)囊郧癲吩咐中所指定的地址范圍的末尾起先顯
示128個(gè)字節(jié)的內(nèi)容。
有關(guān)顯示寄存器內(nèi)容的信息,請單擊“相關(guān)主題”列表中的DebugR(寄存
器)。
范例
假定鍵入以下吩咐:
des:10010f
Debug按以下格式顯示范圍中的內(nèi)容:
04BA:0100544F4D0053415759-4552000000000000
TOM.SAWYER......
假如在沒有參數(shù)的狀況下鍵入d吩咐,Debug按以前范例中所描述的內(nèi)容來
編排顯示格式。顯示的每行以比前一行的地址大16個(gè)字節(jié)(假如是顯示40列的
屏幕,則為8個(gè)字節(jié))的地址開頭。
對于后面鍵入的每個(gè)不帶參數(shù)的d吩咐,Debug將緊接在最終顯示的吩咐后
馬上顯示字節(jié)內(nèi)容。
假如鍵入以下吩咐,Debug將從CS:100起先顯示20h個(gè)字節(jié)的內(nèi)容:
dcs:100l20
假如鍵入以下吩咐,Debug將顯示范圍從CS段的100h到115h中全部字節(jié)
的內(nèi)容:
des:100115
說明
當(dāng)運(yùn)用d吩咐時(shí),Debug以兩個(gè)部分顯示內(nèi)存內(nèi)容:十六進(jìn)制部分(每個(gè)字
節(jié)的值都用十六進(jìn)制格式表示)和ASCII碼部分(每個(gè)字節(jié)的值都用ASCII碼
字符表示)。每個(gè)非打印字符在顯示的ASCII部分由句號(.)表示。每個(gè)顯示行顯
示16字節(jié)的內(nèi)容,第8字節(jié)和第9字節(jié)之間有一個(gè)連字符。每個(gè)顯示行從16字
節(jié)的邊界上起先。
3、Debug:E(鍵入)
將數(shù)據(jù)輸入到內(nèi)存中指定的地址。
可以按十六進(jìn)制或ASCII格式鍵入數(shù)據(jù)。以前存儲(chǔ)在指定位置的任何數(shù)據(jù)
全部丟失。
eaddress
參數(shù)
address
指定輸入數(shù)據(jù)的第一個(gè)內(nèi)存位置。
list
指定要輸入到內(nèi)存的連續(xù)字節(jié)中的數(shù)據(jù)。
有關(guān)集成記憶碼的信息,請單擊“相關(guān)主題”列表中的DebugA(匯編)。
有關(guān)顯示內(nèi)存部分內(nèi)容的信息,請單擊“相關(guān)主題”列表中的DebugD(轉(zhuǎn)
儲(chǔ))。
++
范例
假定鍵入以下吩咐:
ecs:100
Debug按下面的格式顯示第一個(gè)字節(jié)的內(nèi)容:
04BA:0100EB.
要將該值更改為41,請?jiān)诓迦朦c(diǎn)鍵入41,如下所示:
04BA:0100EB.41_
可以用一個(gè)e吩質(zhì)鍵入連續(xù)的字節(jié)值。在鍵入新值后按SPACEBAR(空格
鍵),而不是按ENTER鍵。Debug顯示卜一個(gè)值。在此范例中,假如按三
次SPACEBAR(空格鍵),Debug將顯示下面的值:
04BA:0100EB.4110.00.BC._
要將十六進(jìn)制值BC更改為42,請?jiān)诓迦朦c(diǎn)鍵入42,如下所示:
04BA:0I00EB.4110.00.BC.42_
假定確定值10應(yīng)當(dāng)是6F。要訂正該值,請按HYPHEN鍵兩次以返回到地
址0101(值10)。Debug顯示以下內(nèi)容:
04BA:0100EB.4110.00.BC.42-
04BA:010200.-
04BA:010110._
在插入點(diǎn)鍵入6f更改值,如下所示:
04BA:010110.6f_
按ENTER停止e吩咐并返回到Debug提示符下。
以下是字符串項(xiàng)的范例:
eds:l()()"Thisisthetextexample"
該字符串將從DS:100起先填充24個(gè)字節(jié)。
++
說明
運(yùn)用address參數(shù)
假如在沒有指定瓦選的lisl參數(shù)的值狀況下指定address的值,Debug將顯
示地址和內(nèi)容,在下一行重復(fù)地址,并等待您的輸入。此時(shí),您可以執(zhí)行卜.列操
作之一:
?替換字節(jié)值U為此,請?jiān)诋?dāng)前值后鍵入新值U假如您鍵入的值不是有效
的十六進(jìn)制值,或該值包含兩個(gè)以上的數(shù)字,則Debug不會(huì)回顯無效或額外的
字符。
-進(jìn)入下一個(gè)字節(jié)。為此,請按SPACEBAR(空格鍵)。要更改該字節(jié)中
的值,請?jiān)诋?dāng)前值后鍵入新值。假如按SPACEBAR(空格鍵)時(shí),移動(dòng)超過了8位
界限,Debug程序?qū)@示新的一行并在行首顯示新地址。
?返回到前一個(gè)字節(jié)。為此,請按HYPHEN鍵(-)??梢苑磸?fù)
按HYPHEN鍵(-)向后移動(dòng)超過多個(gè)字節(jié)。在按HYPHEN時(shí),Debug起先新行
并顯示當(dāng)前地址和字節(jié)值。
?停止執(zhí)行e吩咐。為此,請按ENTER鍵c在任何字節(jié)位置都可以
按ENTERo
運(yùn)用list參數(shù)
假如指定list參數(shù)的值,隨后的e吩咐將運(yùn)用列表中的值替換現(xiàn)有的字節(jié)
值。假如發(fā)生錯(cuò)誤,將不更改任何字節(jié)值。
Lisi值可以是I六進(jìn)制字節(jié)或字符串。運(yùn)用空格、逗號或制表符來分隔值。
必需將字符串包括在單或雙引號中。
++++
4、Debug:F(填充)
運(yùn)用指定的值填充指定內(nèi)存區(qū)域中的地址。
可以指定十六進(jìn)制或ASCH格式表示的數(shù)據(jù)。任何以前存儲(chǔ)在指定位置的
數(shù)據(jù)將會(huì)丟失。
frangelist
參數(shù)
range
指定要填充內(nèi)存區(qū)域的起始和結(jié)束地址,或起始地址和長度。關(guān)于有效
的range值的信息,請單擊“相關(guān)主題”列表中的“Debug說明”。
list
指定要輸入的數(shù)據(jù)。ListnJ以由十六進(jìn)制數(shù)或引號包括起來的字符串組成。
++
范例
假定鍵入以下吩咐:
f()4ba:10011004245525441
作為響應(yīng),Debug運(yùn)用指定的值填充從04BA:100到O4BA:1FF的內(nèi)存位置。
Debug重復(fù)這五個(gè)值直到100h個(gè)字節(jié)全部填滿為止。
++
說明
運(yùn)用range參數(shù)
假如range包含的字節(jié)數(shù)比list中的數(shù)值大,Debug將在list中反復(fù)指派值,
直到range中的全部字節(jié)全部填充。
假如在range中的任何內(nèi)存損壞或不存在,Debug將顯示錯(cuò)誤消息并停
止f吩咐。
運(yùn)用list參數(shù)
假如list包含的數(shù)值多于range中的字節(jié)數(shù),Debug將忽視list中額外的值。
5、Debug:G(轉(zhuǎn)向)
運(yùn)行當(dāng)前在內(nèi)存中的程序。
g[=address][breakpoints]
參數(shù)
=address
指定當(dāng)前在內(nèi)存中要起先執(zhí)行的程序地址。假如不指定address,Windows
2000將從CS:IP寄存器中的當(dāng)前地址起先執(zhí)行程序。
breakpoints
指定可以設(shè)置為g吩咐的部分的1到1()個(gè)臨時(shí)斷點(diǎn)。
有關(guān)執(zhí)行循環(huán)、重復(fù)的字符串指令、軟件中斷或子程序的信息,請單擊“相
關(guān)主題”列表中的DebugP(執(zhí)行)。
有關(guān)執(zhí)行指令的信息,請單擊“相關(guān)主題”列表中的DebugT(跟蹤)。
范例
假定鍵入以下吩咐:
gcs:755()
Windows20()0運(yùn)行當(dāng)前內(nèi)存中的程序,直到執(zhí)行到CS段中的斷點(diǎn)地
址7550為止。Debug將顯示寄存器的內(nèi)容和標(biāo)記的狀態(tài)并結(jié)束g吩咐。
以下吩咐設(shè)置兩個(gè)斷點(diǎn):
gcs:7550,cs:8()00
假如在Debug遇到斷點(diǎn)之后再次鍵入g吩咐,將從在斷點(diǎn)之后的指令起先
執(zhí)行,而不是在通常的起先地址執(zhí)行。
++
說明
運(yùn)用address參數(shù)
必需在address參數(shù)之前運(yùn)用等號(=)以區(qū)分起先地址(address)和斷點(diǎn)地址
(breakpoints)o
指定斷點(diǎn)
程序在它遇到的第一個(gè)斷點(diǎn)處停止,而不論您在breakpoint列表的什么位置
鍵入斷點(diǎn)。Debug在每個(gè)斷點(diǎn)處用中斷代碼代替原始指令。
當(dāng)程序到達(dá)斷點(diǎn)時(shí),Debug將全部斷點(diǎn)地址復(fù)原到它們的最初指令并顯示全
部寄存器的內(nèi)容、全部標(biāo)記的狀態(tài)以及最終執(zhí)行指令的解碼形式。Debug顯示的
信息與運(yùn)用Debugr(寄存器)吩咐并指定斷點(diǎn)時(shí)所顯示的信息相同。
假如不在斷點(diǎn)處停止程序,Debug程序?qū)⒉贿\(yùn)用原始指令替換中斷代碼。
設(shè)置斷點(diǎn)的限制
可以只在包含8086操作代碼(操作碼)的第一個(gè)字節(jié)的地址上設(shè)置斷點(diǎn)。
假如設(shè)置了10個(gè)以上的斷點(diǎn),Debug將顯示以下信息:
bperror
對用戶堆棧指針的要求
用戶堆棧指針必需有效且必需有6個(gè)字節(jié)可用于g吩咐。該吩咐運(yùn)用iret指
令跳轉(zhuǎn)到正在被測試的程序。Debug設(shè)置用戶堆棧指針并將用戶標(biāo)記、代碼段寄
存器和指令指針壓入用戶堆棧。(假如用戶堆棧無效或太小,操作系統(tǒng)可能會(huì)失
敗。)Debug在指定的斷點(diǎn)處設(shè)置中斷代碼(OCCh)。
重新啟動(dòng)程序
不要在Windows2000顯示以下消息后嘗試重新啟動(dòng)程序;
Programterminatednormally
要正確地運(yùn)行程序,必需通過運(yùn)用Debugn(名稱)和1(加載)吩咐重新
加載該程序。
++++
6、Debug:H(十六進(jìn)制)
對指定的兩個(gè)參數(shù)執(zhí)行十六進(jìn)制運(yùn)算。
hvalue1value2
參數(shù)
value1
代表從0到FFFFh范圍內(nèi)的任何十六進(jìn)制數(shù)字。
value2
代表從0到FFFFh范圍內(nèi)其次個(gè)十六進(jìn)制數(shù)字。
++
范例
假定鍵入以下吩咐:
hl9f10a
Debug執(zhí)行運(yùn)算并顯示以下結(jié)果。
02A90095
++
說明
Debug首先將指定的兩個(gè)參數(shù)相加,然后從第一個(gè)參數(shù)中減去其次個(gè)參數(shù)。
這些計(jì)算的結(jié)果顯示在一行中:先計(jì)算和,然后計(jì)算差。
++++
7、Debug:M(移動(dòng))
將一個(gè)內(nèi)存塊中的內(nèi)容復(fù)制到另一個(gè)內(nèi)存塊中。
mrangeaddress
參數(shù)
range
指定要復(fù)制內(nèi)容的內(nèi)存區(qū)域的起始和結(jié)束地址,或起始地址和長度。
address
指定要將range內(nèi)容復(fù)制到該位置的起始地址。
++
范例
假定鍵入以卜吩咐:
mcs:l()()11()cs:5()0
Debug首先將CS:11()地址中的內(nèi)容復(fù)制到地址CS:51()中,然后
將CS:1OF地址中的內(nèi)容復(fù)制到CS:5OF中,如此操作直至將CS:1OO地址中的內(nèi)
容復(fù)制到地址CS:5OO中。要查看結(jié)果,請運(yùn)用Debugd(轉(zhuǎn)儲(chǔ))吩咐,并運(yùn)用m吩
咐指定目標(biāo)地址。
++
說明
復(fù)制操作對現(xiàn)有數(shù)據(jù)的影響
假如新數(shù)據(jù)沒有寫入正在被復(fù)制的數(shù)據(jù)塊中的地址,則源數(shù)據(jù)將保持不變。
但是,假如目標(biāo)塊已經(jīng)包含數(shù)據(jù)(就象它在覆蓋副本操作中一樣),則將改寫該數(shù)
據(jù)。(覆蓋復(fù)制操作是指那些目標(biāo)數(shù)據(jù)塊部分內(nèi)容覆蓋原數(shù)據(jù)塊部分內(nèi)容的操
作。)
執(zhí)行覆蓋復(fù)制操作
m吩咐執(zhí)行目標(biāo)地址的覆蓋復(fù)制操作,而不丟失數(shù)據(jù)。將改寫的地址內(nèi)容首
先復(fù)制。因此,假如將較高位地址的數(shù)據(jù)復(fù)制到較低位地址,則復(fù)制操作從原塊
的最低位地址起先并向最高位地址進(jìn)行。反之,假如要將數(shù)據(jù)從低地址復(fù)制到高
地址,復(fù)制操作從原塊的最高地址起先,向最低地址進(jìn)行。
++++
8、Debug:Q(退出)
停止Debug會(huì)話,不保存當(dāng)前測試的文件。
當(dāng)您鍵入q以后,限制返回到Windows2000的吩咐提示符。
參數(shù)
該吩咐不帶參數(shù)。
有關(guān)保存文件的信息,請單擊“相關(guān)主題”列表中的DebugW(寫入)。
++++
9、Debug:R(寄存器)
顯示或變更一個(gè)或多個(gè)CPU寄存器的內(nèi)容。
r[register-namel
參數(shù)
無
假如在沒有參數(shù)的狀況下運(yùn)用,則r吩咐顯示全部寄存器的內(nèi)容以及寄存器
存儲(chǔ)區(qū)域中的標(biāo)記。
register-name
指定要顯示其內(nèi)容的寄存器名。
有關(guān)顯示內(nèi)存部分內(nèi)容的信息,請單擊“相關(guān)主題”列表中的DebugD(轉(zhuǎn)
儲(chǔ))。
有關(guān)反匯編字節(jié)的信息,請單擊“相關(guān)主題”列表中的DebugU(反匯編)。
十十
范例
要查看全部寄存器的內(nèi)容、全部標(biāo)記的狀態(tài)和當(dāng)前位置的指令解碼表,請鍵
入以下吩咐:
r
假如當(dāng)前位置是CS:11A,顯示外觀將類似于以下內(nèi)容:
AX=OEOOBX=OOFFCX=0007DX=01FFSP=039DBP=OOOOSI=005C
DI=OOOO
DS=04BAES=04BASS=04BACS=04BAIP=OUANVUPDINGNZACPE
NC
04BA:011ACD21INT2I
要只查看標(biāo)記的狀態(tài),請鍵入以下吩咐:
rf
Debug按以下格式顯示信息:
NVUPDINGNZACPENC-_
現(xiàn)在,您可以按隨意依次鍵入一個(gè)或多個(gè)有效的標(biāo)記值,其中可以有或沒有
空格,如下所示:
nvupdingnzacpenc-pleicy
Debug結(jié)束r吩咐并顯示Debug提示符。要查看更改,請鍵入r或許吩咐。
Debug將顯示以卜內(nèi)容:
NVUPEIPLNZACPECY-_
按ENTER返回到Debug提示符。
++
說明
運(yùn)用r吩咐
假如指定了寄存器名稱,Windows2000將顯示以十六進(jìn)制標(biāo)記表示的寄存
器的16位值,并將冒號顯示為提示符。假如要更改包含在寄存器中的值,除非
鍵入新值并按ENTER鍵;否則,請按ENTER鍵返回Debug提示符。
有效寄存器名
以下是regisler?name的有效值:ax、bx、ex、dx、sp>bp>si、di、ds、es、
ss、cs、ip、pc及f。ip和pc都引用指令指針。
假如指定寄存器名稱,而不是從前面的列表中指定,Windows2000將顯示
以下消息:
brerror
運(yùn)用f字符而不是寄存器名
假如鍵入f字符代替寄存器名,Debug將每個(gè)標(biāo)記的當(dāng)前設(shè)置顯示為兩字母
代碼,然后顯示Debug提示符。要更改標(biāo)記的設(shè)置,請從下表中鍵入適當(dāng)?shù)膬?/p>
字母代碼:
標(biāo)記名設(shè)置清除
溢出ovnv
方向dn(減)up(增)
中斷ei(啟用)di(禁用)
正負(fù)ng(負(fù))pl(正)
零zrnz
協(xié)助進(jìn)位acna
奇偶校驗(yàn)pe(偶校驗(yàn))po(奇校驗(yàn))
進(jìn)位cync
可以按任何依次鍵入新的標(biāo)記值。不須要在這些值之間留出空格。要停
止r吩咐,請按ENTER鍵。任何沒有指定新值的標(biāo)記保持不變。
用r吩咐顯示的郵件
假如為標(biāo)記指定了多個(gè)值,Debug將顯不以卜消息、:
dferror
假如指定沒有在前面的表中列出的標(biāo)記代碼,Debug將顯示以下消息:
bferror
在這兩種狀況下,Debug將忽視全部在無效項(xiàng)目之后指定的設(shè)置。
Debug的默認(rèn)設(shè)置
在啟動(dòng)Debug時(shí)。,會(huì)將段寄存器設(shè)置到空閑內(nèi)存的低端,指令指針設(shè)置
為OlOOh,清除全部標(biāo)記,并且將其余寄存器設(shè)置為零,除了被設(shè)置
為FFEEh的sp之外。
++++
10、Debug:T(跟蹤)
執(zhí)行一條指令,并顯示全部注冊的內(nèi)容、全部標(biāo)記的狀態(tài)和所執(zhí)行指令的解
碼形式。
t[=address][numberl
參數(shù)
=address
指定Debug啟動(dòng)跟蹤指令的地址。假如省略address參數(shù),跟蹤將從程序
的CS:IP寄存器所指定的地址起先。有關(guān)address參數(shù)有效值的信息,請單擊“相
關(guān)主題”列表中的Debug。
number
指定要跟蹤的指令數(shù)。該值必需是十六進(jìn)制數(shù)。默認(rèn)值為1。
有關(guān)執(zhí)行循環(huán)、重復(fù)的字符串指令、軟件中斷或子例程的信息,請單擊“相
關(guān)主題”列表中的DebugP(執(zhí)行)。
有關(guān)執(zhí)行當(dāng)前內(nèi)存中程序的信息,請單擊“相關(guān)主題”列表中的DebugG(轉(zhuǎn)
向)°
++
范例
要執(zhí)行一個(gè)指令(CS:IP指向的指令),然后顯示寄存器的內(nèi)容、標(biāo)記的狀
態(tài)以及指令的解碼形式,請鍵入以下吩咐:
t
假如程序中的指令位于04BA:0UA,Debug口」能顯示卜列信息:
AX=()E()()BX=()()FFCX=0007DX=01FFSP=039DBP=()(X)()SI=()()5C
DI=OOOO
DS=04BAES=04BASS=04BACS=04BAIP=011ANVUPDINGNZACPE
NC
04BA:011ACD21INT21
++
說明
跟蹤只讀內(nèi)存中的指令
t吩咐運(yùn)用8086或8()88微處理器的硬件跟蹤模式。因此,也可以跟蹤存儲(chǔ)
在只讀內(nèi)存(ROM)中的指令。
運(yùn)用地址參數(shù)
必需在address參數(shù)之前運(yùn)用等號(=)以便將它與number參數(shù)區(qū)分。
11、Debug:U(反匯編)
反匯編字節(jié)并顯示相應(yīng)的原語句,其中包括地址和字節(jié)值。反匯編代碼看起
來象已匯編文件的列表。
u[range]
參數(shù)
無
假如在沒有參數(shù)的狀況下運(yùn)用,則u吩咐分解20h字節(jié)(默認(rèn)值),從前
面u吩咐所顯示地址后的第一個(gè)地址起先。
range
指定要反匯編代碼的起始地址和結(jié)束地址,或起始地址和長度。有
關(guān)range參數(shù)有效值的信息,請單擊“相關(guān)主題”列表中的Debug。
有關(guān)集成記憶碼的信息,請單擊“相關(guān)主題”列表中的DebugA(匯編)。
有關(guān)顯示內(nèi)存部分內(nèi)容的信息,請單擊“相關(guān)主題”列表中的DebugD(轉(zhuǎn)
儲(chǔ))。
++
范例
要反匯編16(10h)字節(jié),從地址04BA:0100起先,請鍵入以下吩咐:
u04ba:1001I0
Debug按以下格式顯示結(jié)果:
04BA:0100206472AND[SI+72],AH
04BA:010369DB69
04BA:01047665JBE016B
04BA:0106207370AND[BP+DI+70],DH
04BA:010965DB65
04BA:010A63DB63
04BA:010B69DB69
04BA:0I0C66DB66
04BA:010D69DB69
04BA:010E63DB63
O4BA:OIOF6lDB61
假如只顯示從04BA:0100到04BA:0108特定地址的信息,請鍵入以下吩咐:
u()4ba:01000108
Debug顯示以下內(nèi)容:
04BA:0100206472AND[SI+72],AH
04BA:010369DB69
04BA:01047665JBE016B
04BA:0106207370AND[BP+DI+70],DH
++++
試驗(yàn)二內(nèi)存操作數(shù)及尋址方法
試驗(yàn)?zāi)康模?/p>
通過試驗(yàn)駕馭下列學(xué)問:
1、8086/8088系統(tǒng)中數(shù)據(jù)在內(nèi)存中的存放方式和內(nèi)存操作數(shù)的幾種尋址方式。
2、8086/8088指令:INC,DEC,LOOP,INT3,INT20H,寄存器SI,DU
3、8086/8088匯編語言偽操作:BYTEPTR,WORDPTR。
4、求累加和程序和多字節(jié)加減法程序。
試驗(yàn)內(nèi)容和步驟:
一、內(nèi)存操作數(shù)及各種尋址方式運(yùn)用:
內(nèi)容:
MOVAX,123411
MOV[1000H],AX
MOVBX,1002H
MOVBYTEPTR[BX],20H
MOVDL,39H
INCBX
MOV[BX],DL
DECDL
MOVSI,3
MOV[BX+SI],DL
MOV[BX+SI+1],DL
MOVWORDPTR[BX+SH-2],2846H
步驟:(也可用emu8086)
1)用A吩咐鍵入上述程序,并用T吩咐逐條運(yùn)行。
2)每運(yùn)行一條有關(guān)內(nèi)存操作數(shù)的指令,要用【)吩咐檢查并記錄有關(guān)內(nèi)存單元的內(nèi)容并注
明是什么尋址方式。
留意D吩咐顯示結(jié)果中右邊的ASCII字符及雙字節(jié)數(shù)存放法。
思索:有關(guān)指令中BYTEPTK及WUKDPTK偽操作不加行不行?試一試。
二、求累加和程序:
程序:
MOVBX,1000H
MOVCX,10
SUBAX,AX
LOP:ADDAL,[BX]
ADCAU,0
INCBX
J:LOOPLOP
INT3H;斷點(diǎn)中斷
步驟:
1)用A吩咐將程序鍵入到100H起先的內(nèi)存中,在鍵入時(shí)登記標(biāo)號LOP和J的實(shí)際地址,在鍵
入LOOP指令時(shí)LOP用實(shí)際地址值代替。
2)用吩咐、AA將此程序命名為文件AA(文件名可任?。?/p>
3)用R吩咐將BX:CX改為程序長度值(即最終一條指令后面的地址減去開
始地址)
4)用吩咐*100將此程序存到AA命名的磁盤文件中。
5)用吩咐Q退出DEBUG。
6)用吩咐DEBUGAA再次調(diào)入DEBUG和文件AA,可用U吩咐檢查調(diào)入程序。
若調(diào)入DEBUG時(shí)忘了加AA文件名,可用N吩咐和L吩咐將文件調(diào)入。
7)用E吩咐在內(nèi)存地址1000H處鍵入16個(gè)數(shù)字
8)用吩咐G=100J(J用實(shí)際地址代替),使程序運(yùn)行并停在斷點(diǎn)J上,檢查
AX,BX的值是否符合你的預(yù)料值。
9)用T吩咐運(yùn)行一步,視察程樣方向(IP值)和CX值是否與你的估計(jì)一樣,
若不一樣,檢查程序是否有錯(cuò)。
10)重復(fù)GJ與T,再檢查AX是否正確。
11)用G吩咐使程序運(yùn)行到結(jié)束,檢查AX值是否正確。
三、多字節(jié)加法程序。
程序:
MOVDL1000H
MOVCX:8
MOVSI:2000H
CLC
LOP:MOVAL;[SI]
ADC[DI],AL
INCSI
INCDI
LOOPLOP
INT20H:INT2()H為DOS中斷返回』NT3為斷點(diǎn)中斷(用于DEBUG)
步驟:
1)用吩咐鍵入此程序
2)用E吩咐在1000H起先處鍵入一個(gè)8字節(jié)被加數(shù),在2000H起先處鍵入一個(gè)8字節(jié)加數(shù),均
為低字節(jié)在前面。
3)。用G吩咐運(yùn)行此程序,并用D吩咐檢查其結(jié)果(存放在哪里?),是否正確?
4)將INT20H指令改為INT3,有何區(qū)分?若這條指令不加,行不行?試一試。
四。自編程序:
用16位減法指令編一個(gè)32位(4字節(jié))數(shù)減法程序,兩個(gè)源數(shù)及結(jié)果存放
地址同上題。調(diào)試并做記錄。
試驗(yàn)報(bào)告要求:
1、各項(xiàng)試驗(yàn)結(jié)果記錄。
2、自編程序原稿及調(diào)試后修正稿,寫出原稿錯(cuò)在那里。
試驗(yàn)三數(shù)據(jù)串傳送和查表程序
試驗(yàn)?zāi)康模?/p>
通過試驗(yàn)駕馭下列學(xué)問:
1、堆棧、堆棧指示器SP和堆棧操作指令PUSH、POP。
2、段寄存器和物理地址計(jì)算。
3、查表法和查表指令XLAT。
4、數(shù)據(jù)串傳送程序和數(shù)據(jù)串傳送指令MOVS、STOS及重復(fù)前輟REP。
5、循環(huán)指令ROL、邏輯與指令A(yù)ND和清方向位指令CLD。
6、偽操作指令DB。
試驗(yàn)內(nèi)容及步驟:
一、利用查表方法把DX的內(nèi)容(16進(jìn)制數(shù))轉(zhuǎn)換成ASCII碼:
1、用A吩咐鍵入下列程序:
MOVBX,1OODH
MOV1)(,200011
MOVCX,4
LOP:PUSHex
MOVCL,4
ROLDX,CL
POPex
MOVAL,DL
ANDAL,OFH
XLAT
CLD
STOSB
LOOPLOP
INT20H
2、用A吩咐在1000H處鍵入下歹UASCII碼并用D吩咐檢查之:
DB'0123456789ABCDEF,
用D吩咐檢查時(shí)留意左邊的ASCII碼值和右邊的字符。
3、用R吩咐給DX送一個(gè)四位的16進(jìn)制數(shù)(例7F8EH)?
4、用T吩咐逐條運(yùn)行這程序到LOOP指令處,視察并記錄每次運(yùn)行結(jié)果,特殊是SP和堆棧內(nèi)
容(用D吩咐檢查)
5、用G吩咐將此程序運(yùn)行到結(jié)束,并用D吩咐檢查200011處所轉(zhuǎn)換的結(jié)果。可留意屏幕右
邊的ASCII字符與DX是否一樣。
二、數(shù)據(jù)串搬家程序:
1、用A吩咐鍵入下列程序:
MOVSI,1OODH
MOVDI,150011
MOVCX,OFH
LOP:MOVAL,[SI]
MOV[DI],AL
INCSI
INC1)1
LOOPLOP
INT2011
2、用A吩咐DB偽指令在1000H鍵入下列字符串:
*IBM_PCCOMPUTER)
3、用G吩咐運(yùn)行此程序,并用D吩咐檢查FI的地址處的字符與源串是否一樣。
4、若此程序中的目的地址改為1002H,再運(yùn)行此程序,看能不能把1000H起先的
字符串搬到I002H起先的地方去?修改程序以做到這一點(diǎn)。
三、段寄存器概念及字符串傳送指令練習(xí):
1、用A吩咐鍵入下列程序:
MOVSI,0
MOVDI,0
MOVAX,1OODH
MOVDS,AX
MOVAX,1500H
MOVES,AX
MOVCX,OFH
CLD
REPMOVSB
INT20H
2、用A吩咐DB偽指令在1OOOH:OOOOH處鍵入字符串'IBM_PCCOMPUTER',并用D命檢查之
3、用D吩咐檢查OFOOH:1OOOH處內(nèi)容,看是否一樣。為什么?
4、用G吩咐運(yùn)行此程序,檢查目的地址1500H:0000H處內(nèi)容。并登記DS與ES值。
5、修改此程序,使ES與DS為同一值,以削減一條指令,而源物理地址和目的物理地址(是
多少?)仍和原來一樣。
試驗(yàn)報(bào)告要求:
1、各項(xiàng)試驗(yàn)記錄和思索題。
2、要求你修改的程序的清單(修改后)和調(diào)試記錄。
試驗(yàn)四屏幕字符顯示程序
試驗(yàn)?zāi)康模?/p>
通過試驗(yàn)駕馭下列學(xué)問:
1、8086/8088指令:JMP,ROR,XOR,HLTo
2、利用DOS功能調(diào)用1NT21H的2號和9號功能進(jìn)行屏幕顯示的方法。
3、干脆向RAM(VRAM)送ASCII碼進(jìn)行屏幕顯示的方法。
4、IBM-PC機(jī)的ASCII碼表及限制字符。
5、吩咐()文件及運(yùn)用方法。
6、利用"Break退出程序的方法及局限性。
試驗(yàn)內(nèi)容及步驟:
一、利用INT2109H號功能調(diào)用顯示字符串。
1、用A吩咐在100H處鍵入下列程序:
MOVAH,9
MOVDX,110
INT21
INT20
2、用A吩咐在UOH處鍵入下列字符串的ASCII碼:
DB'Thisisabcimple!$,
3、用N吩咐和W吩咐將此程序(包括數(shù)據(jù)區(qū))存入文件名為AA的磁盤文件中。(存入前
BX:CX必需置為文件長度值)。
4、用Q吩咐退出DEBUG。
5、在DOS吩咐下打AA,運(yùn)行此程序,即在屏幕上顯示'Thisisasample!'字符串,若不出
現(xiàn),用DEBUG檢查程序有無錯(cuò)誤。
二、利用INT21H2號功能顯示字符:
1、用A吩咐在100H處鍵入下列程序:
XORDL:DL
MOVCX,100
LOP:MOVAIL2
INT21
INCDL
LOOPLOP
INT20
2、用G吩咐運(yùn)行程序,即在屏幕卜依次緩慢的顯示256個(gè)ASCII字符.細(xì)致視察每個(gè)字符.
和IBM-PCASCII碼表比照,看07H-0I川處限制字符顯示結(jié)果與表上有何不同?
3、按CTRL+BREAK退出此程序,若一次不行可多做幾次。
三、干脆向VRAM送ASCII碼顯示字符
1、用A吩咐在100H處鍵入下列程序:
MOVAX,BOOD
MOVDS,AX
XORAL,AL
XORBX,BX
MOVCX,100
LOP:MOV[BX],AL
INCBX
INCAL
PUSHCX
MOVCX,8
DELY:PUSHCX
MOVCX,0
J:LOOPJ
POPCX
LOOPDELY
POPCX
LOOPLOP
INT20
2、用N吩咐和W吩咐將此程序存入BB文件中。(肯定要先存入!)
3、用G吩咐運(yùn)行此程序,細(xì)致視察每一個(gè)ASCII碼顯示結(jié)果,并和字符表及上一道程序運(yùn)
行狀況進(jìn)行比照,其限制字符區(qū)(07-0DH)顯示結(jié)果和INT21H2號功能調(diào)用有何不同?
四。自編一個(gè)程序,要求顯示AX的內(nèi)容,即能顯示AX=xxxx。
調(diào)試時(shí)AX的內(nèi)容可用R吩咐賦值,也可用MOV指令賦值。
試驗(yàn)報(bào)告要求:
1、各項(xiàng)試驗(yàn)記錄及視察體會(huì)。
2、利用INT21H顯示和干脆向VRAM送ASCH碼顯示方法在顯示結(jié)果上有什么不同?
3、自編程序草稿及調(diào)試結(jié)果。
試驗(yàn)五二進(jìn)制數(shù)顯示成十六進(jìn)制數(shù)的屏幕字符顯示程序
試驗(yàn)?zāi)康模?/p>
通過試驗(yàn)駕馭下列學(xué)問:
1、8086指令:JG,SHR,MOV,OR,CMP,INC,LEA,INT等。
2、利用DOS功能調(diào)用INT21H的9號功能進(jìn)行屏幕顯示的方法。
試驗(yàn)內(nèi)容及步驟:
一、利用INT2109H號功能調(diào)用顯示字符串。
1、字符串顯示09H功能說明
功能:在屏幕上顯示在存儲(chǔ)器內(nèi)以“$”為結(jié)束符的字符串(不顯示).
入口參數(shù):DS:DX=串首址。
例4一個(gè)以“$”結(jié)束的字符串已存放在mess為首地址的內(nèi)存緩沖區(qū)中,利用09號功
能調(diào)用如下:
movah,9
movdx,segmess;ds:dx=串地址
movds,dx
movdx,offsetmess
int21h
2、從唳ss起先處存放下列字符串的ASCII碼;
'Thisisasample!$*
寫程序把它顯示出來。
3、把上面你寫出的程序存為aa
4、在DOS吩咐下打AA,運(yùn)行此程序,即在屏幕上顯示'Thisisasample!'字符串,若不出
現(xiàn),用DEBUG檢查程序有無錯(cuò)誤。
二、自編一個(gè)程序,要求把NUM單元存放的一個(gè)8位二進(jìn)數(shù),顯示成16進(jìn)制數(shù),
如NUM單元的內(nèi)容為僧1001011"要求能顯示“RESULT=4BH”.
程序框架為:
DATASEGMENT
NUMDB01001011B
BUFDBODH,OAH,'RESULT3
STRDB4DUP(?)
DATAENDS
STACKSEGMENTSTACK
DB200DUP(O)
STACKENDS
CODESEGMENT
ASSUMEl)S:DATA,SS:STACK,CS:CODE
START:MOVAX;DATA
MOVDS;AX
MOVAH;4CH
INT21H
CODEENDS
ENDSTART
試驗(yàn)報(bào)告要求:
1、各項(xiàng)試驗(yàn)記錄及視察體會(huì)。
2、自編程序草稿及調(diào)試結(jié)果。
試驗(yàn)六查表指令及子程序嵌套試驗(yàn)
試驗(yàn)?zāi)康模?/p>
通過試驗(yàn)駕馭下列學(xué)問:
1、8086/8088指令:MOV,XLAT,LEA,JNE,CALL,RET,PUSH,POP,CMP,INT。
2、數(shù)據(jù)段的定義方法。
3、XLAT指令的運(yùn)用方法。
4、子程序的嵌套調(diào)用及子程序參數(shù)傳遞的方法。
5、利用DOS功能調(diào)用INT21H的4cH號功能返回DOS的方法。
6、MASM、LINK、DEBUG、EMU8086等匯編、調(diào)試工具的運(yùn)用方法。
試驗(yàn)內(nèi)容及步驟:
一、調(diào)試以下兩個(gè)程序,讀懂程序,尤其是其次個(gè)程序,要駕馭階乘的算法,最終寫出
程序的運(yùn)行結(jié)果及結(jié)果存放的位置。
1、已知某班學(xué)生的英語成果按學(xué)號(從1起先)從小到大的依次排列在TAB表中,要查的學(xué)
生的學(xué)號放在變量N0中,查表結(jié)果放在變量ENGLISH中。編寫程序如下:
STACKSEGMENTSTACK
DB200DUP(O)
STACKENDS
DATASEGMENT
TABDB80,85,86,71,79,96
DB83,56,32,66,78。84
NODB10
ENGLISTDB?
DATAENDS
CODESEGMENT
ASSUMEDS:DATA,SS:STACK,CS:CODE
BEGIN:MOVAX,DATA
MOVDS,AX
LEABX,TAB
MOVAL,NO
DELAL
XLATTAB
MOVENGLISH,AL
MOVAH,4CH
INT21H
CODEENDS
ENDBEGIN
2、計(jì)算5!的程序示例,RESULT是保存階乘的存儲(chǔ)單元。
程序如下:
STACKSEGMENTSTACK
DB200DUP(O)
STACKENDS
DATASEGMENT
NDW5
RESULTDW?
DATAENDS
CODESEGMENT
ASSUMECS:CODE,SS:STACK,I)S:1)ATA
START:MOVAX,DATA
MOVDS,AX
MOVAX,N
CALLFACT
MOVAX,RESULT
MOVAH,4CH
INT2111
FACTPROC
CMPAX,0
JNELI
MOVRESULT,1
JMPEXIT
LI:PUSHAX
DECAX
CALLFACT
POPAX
MOVRESULT
MOVRESNLT,AX
EXIT:RET
FACTENDP
CODEENDS
ENDSTART
二、讀一讀以下程序,看一看運(yùn)行結(jié)果。(選作)
DATASEGMENT
ATRIDB6EH,52H,94H,52H,6EH
DATAENDS
STACKSEGMENTPARASTACK*STACK
DB200DUP(O)
STACKENDS
CODESEGMENT
ASSUMECS:CODE,DS:DATA,SS:STACK
ST:MOVAX,DATA
MOVDS,AX
MOVAH,0;設(shè)置80X25彩色文本方式
MOVAL,3
INT10H
LEASI,ATRI;屬性字節(jié)值表首址存SI
MOVDI,5;顯示5個(gè)字符
MOVDX,0A13II;顯示位置
MOVAH,15;取當(dāng)前頁號
INT10H
LP:MOVAH,2;置光標(biāo)位置
INCDL
INT10H
MOVAL,5,顯示梅花形字符
MOVBL,[SI]
MOVCX,1
MOVAH,9
INT10H
INCSI;指向下一屬性字節(jié)
DECDI;判顯示完否
J
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 北京市有研工程技術(shù)研究院有限公司2026屆秋季校園招聘17人備考題庫及參考答案詳解
- 2025年寧夏中科碳基材料產(chǎn)業(yè)技術(shù)研究院招聘備考題庫完整參考答案詳解
- 2026年工程項(xiàng)目跟蹤管理合同
- 2026年智能醫(yī)療數(shù)據(jù)血緣分析工具采購合同
- 工商銀行的抵押合同(標(biāo)準(zhǔn)版)
- 2026年醫(yī)院外部審計(jì)合同
- 中山大學(xué)附屬第三醫(yī)院粵東醫(yī)院2026年合同人員招聘備考題庫附答案詳解
- 踐行習(xí)近平生態(tài)文明思想解放思想促進(jìn)高質(zhì)量研討材料
- 中華人民共和國藥品管理法試題及答案
- 2025年煙臺市檢察機(jī)關(guān)公開招聘聘用制書記員的備考題庫(24人)參考答案詳解
- 貴州省安順市安順經(jīng)濟(jì)技術(shù)開發(fā)區(qū)2023-2024學(xué)年上學(xué)期七年級期末英語試題
- 2022-2023學(xué)年北京市東城區(qū)高二(上)期末生物試卷(含答案解析)
- 證券投資案例分析題及答案
- 煎藥室崗前培訓(xùn)PPT
- GB/T 42131-2022人工智能知識圖譜技術(shù)框架
- 家具制造企業(yè)安全檢查表優(yōu)質(zhì)資料
- 如家酒店新版
- GRS4.0管理手冊資料
- GA 1016-2012槍支(彈藥)庫室風(fēng)險(xiǎn)等級劃分與安全防范要求
- 《電能質(zhì)量分析》課程教學(xué)大綱
- 尿素濕法煙氣脫硝技術(shù)簡介
評論
0/150
提交評論