版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
第五章86系列微型計算機的指令系統(tǒng)
本章教學(xué)目的
-指令語言是面向機器的語言,它在自動控制、智能化
儀器儀表、監(jiān)測等領(lǐng)域應(yīng)用非常廣泛。
■本章結(jié)合8086微處理器的指令系統(tǒng)學(xué)習(xí),使學(xué)生掌握
指令系統(tǒng)相關(guān)知識,如尋址方式、各種指令的運用,
通過學(xué)習(xí),要求學(xué)生能夠用所學(xué)指令編程實現(xiàn)較簡單
的程序設(shè)計,分析現(xiàn)有程序的功能,完成已知程序的
查錯與填空等。
本章學(xué)習(xí)要求
,掌握
□8088CPU的尋址方式;
□8086CPU的指令系統(tǒng);立即尋址,直接尋址,寄存器尋址,
寄存器間接尋址,變址尋址,基址加變址尋址方式中操作數(shù)
尋址過程;
□指令的構(gòu)成,指令操作數(shù)有效地址(EA)的形成;
□間接尋址和基址加變址尋址方式中寄存器的約定,段基數(shù)及
操作數(shù)地址的確定,段超越的概念及其使用;
□8088指令系統(tǒng)中數(shù)據(jù)傳送,算術(shù)運算,邏輯運算,串操作和
控制傳送指令的含義及操作過程及算術(shù)和邏輯運算對標(biāo)志位
的影響。
□掌握算術(shù)運算中加減法運算指令的組合BCD數(shù)的十進制調(diào)整
過程及在碼制轉(zhuǎn)換中的應(yīng)用。
2.理解
□各種尋址方式的工作原理,各指令的執(zhí)行對標(biāo)志位
的影響;
□標(biāo)志位的狀態(tài)對指令執(zhí)行的影響;重復(fù)前綴指令。
3.了解
□十進制調(diào)整指令;
□指令代碼和執(zhí)行周期數(shù)的含義;
□處理器控制指令的含義。
、本章主要外語詞匯
—■—:---------
1.EA:EffectiveAddress,有效地址
主要內(nèi)容
■86系列匯編語言及指令的格式與尋址方式
■傳送類指令
■數(shù)據(jù)操作類指令
■串操作指令
-控制類指令
指令是讓計算機完成某種操作的命令,指令的集合稱作指令系統(tǒng),
不同系列計算機有不同的指令系統(tǒng)。
-指令系統(tǒng)與計算機硬件有著某些對應(yīng)關(guān)系,用指令進行編程能夠充
分開發(fā)計算機硬件資源,它的程序目標(biāo)代碼短、運行速度快,在自
動控制、智能化儀器儀表、監(jiān)測等領(lǐng)域應(yīng)用非常廣泛。
■86系列指令系統(tǒng)是在8位微處理器86系列的指令系統(tǒng)基礎(chǔ)上設(shè)計的,
它兼容了86系列的全部指令,這部分對8位微處理器具有兼容性的
指令往往是處理字節(jié)(8位)的。
5.1尋址方式
5.L1指令的組成
■指令是計算機完成的某種動作的命令。
-指令的集合稱作指令系統(tǒng),指令系統(tǒng)與微處理器有密
切的聯(lián)系,不同的微處理器有不同的指令系統(tǒng)。
■匯編指令與機器指令一一對應(yīng)。
操作碼操作數(shù)
做什么數(shù)據(jù)或數(shù)據(jù)在哪里,可
以由0~11個
■匯編指令中的操作碼用助記符(英文單詞或單詞的縮
寫形式)表示
指令的組成
?指令的組成
-操作碼字段(Field):標(biāo)明計算機要執(zhí)行什么操作
-操作地址字段:指出指令在執(zhí)行過程中所需要的操作數(shù)
(值為多少或者放在什么地方或者控制轉(zhuǎn)移到什么地
方),以及操作結(jié)果送到哪里。
?指令通常應(yīng)提供的信息
-做什么操作
-操作數(shù)從哪里來
-操作結(jié)果放在哪里
-對于調(diào)用和轉(zhuǎn)移指令,還要涉及轉(zhuǎn)移或調(diào)用地址的提供
方式
86系列匯編語言指令語句格式:
指令的一般格式
?操作數(shù)字段可以有一個,二個或三個操作數(shù),通常
稱為“一地址”,“二地址”或“三地址”指令。
操作碼操作數(shù)操作數(shù)
?指令的操作碼在機器中的表示比較簡單,只要對每
一種操作指定相應(yīng)的二進制代碼即可。
?指令的操作數(shù)字段的情形就比較復(fù)雜。
一尋址方式。
指令示例
?力口1指令I(lǐng)NCAX
-只需要指出加1的操作數(shù),它是“單地址”指令。
?雙操作數(shù)指令A(yù)DDAX,BX
-大多數(shù)運算型指令都是雙操作數(shù)指令。
-x86處理器采用“二地址指令”,兩個操作數(shù)分別
稱為“源操作數(shù)”和“目的操作數(shù)”,指令執(zhí)行
后,把運算結(jié)果放到目的操作數(shù)的地址之中。
-對這種指令,有的機器(大中型)使用“三地址
指令”,除給出參加運算的兩個操作數(shù)外,還要
指出運算結(jié)果的存放地址。
5.1.2尋址方式
?定義1:指令中操作數(shù)的表示方式。
?定義2、規(guī)定如何對地址字段作出解釋以找到操作數(shù)。
?程序轉(zhuǎn)移時需提供轉(zhuǎn)移地址,這與提供操作數(shù)地址
在方法上沒有本質(zhì)區(qū)別,因此也歸入尋址方式的范
疇。
?一個指令系統(tǒng)能夠提供哪些尋址方式,能否為編制
程序提供方便,這是指令系統(tǒng)設(shè)計的關(guān)鍵。
尋址方式
-數(shù)據(jù)的尋址方式
-立即尋址
-寄存器尋址
-存儲器尋址
-I/O端口尋址
?轉(zhuǎn)移地址的尋址方式
、立即尋址(Immediateaddressing)
?指令中直接給出操作數(shù),操作數(shù)緊跟在操作碼之后,
作為指令的一部分存放在代碼段里;在取出指令的
同時也就取出了操作數(shù),立即有操作數(shù)可用,所以
稱之為立即尋址。存儲器
AX
高地址
Example:
MOVAL,80H30代
64碼
MOVAX,3064H段
OP
ADDAL,20H
低地址
ADDAX,1090H
MOVAX,3064H
立即尋址
?立即數(shù)可以是:
-16進制數(shù),以H結(jié)尾
?MOVAL,43H
-2進制數(shù),以B結(jié)尾
?MOVAL,01000000B
-10進制數(shù),不需要加特殊符號
?MOVAL,100
-用'括起來的ASCH碼表達的字符或字符串
?MOVAL,'A'
?MOVAXJAB'
■注意:以A?F打頭的數(shù)字出現(xiàn)在指令中時,前面要加一個數(shù)
字0。例如將立即數(shù)FF00H送到AX的指令必須寫成如下形式:
MOVAX,0FF00H
立即尋址
?在8086、80286微處理器中,立即數(shù)可以為8位
(字節(jié)),也可以為16位(字)。如果是16位數(shù),
則“高位字節(jié)存放在高地址中,低位字節(jié)存放在低
地址中”。
?立即數(shù)只能用于源操作數(shù),而不能用于耳的操作數(shù)。
?立即數(shù)不但可以送到寄存器中,也可以送到一個存
儲單元中(8位)、或兩個連續(xù)的存儲單元中(16
位)。
二、寄存器尋址(Registeraddressing)
?操作數(shù)在寄存器中,指令中指明寄存器號,這種尋
址方式叫寄存器尋址。用寄存器名表示它的內(nèi)容。
Example:
?MOVAL,BL;MOVAX,BX;
MOVCX,DX;ROLAH,1;
I
將AH中的內(nèi)容循環(huán)左移一位
H1-ID7DO
寄存器尋址
■寄存器尋址方式簡單快捷,最常使用。
-絕大多數(shù)指令采用通用寄存器尋址。
-部分指令支持專用寄存器,例如段寄存器。
?當(dāng)指令中的源操作數(shù)和目的操作數(shù)都是寄存器時,必須采
用同樣字長的寄存器,否則匯編時出錯。
-不可以:MOVAX,CL
?兩個操作數(shù)不能同時為段寄存器。
一不可以:MOVSS,DS
?目的操作數(shù)不能是代碼段寄存器。
-例如,指令MOVCS,AX,用MASM6.11匯編時沒有報
錯,執(zhí)行時會發(fā)生問題。
寄存器尋址
?寄存器尋址的特點
1.操作數(shù)就在寄存器中,不需要訪問存儲器來取
得操作數(shù)(指令執(zhí)行時,操作就在CPU的內(nèi)部
進行),因而執(zhí)行速度快。
2.寄存器號比內(nèi)存地址短。
-在編程中,如有可能,盡量使用這種尋址方式的指
令。
三、存儲器尋址方式
-除立即尋址、寄存器尋址外,其它各種尋址方式的
操作數(shù)均在存儲器中,通過采用不同的尋址方式取
得操作數(shù)地址。
?16位系統(tǒng)的存儲器尋址:
一物理地址PA=段基址SBA(SegmentBase
Address)與有效地址EA(EffecitiveAddress)
組合。
?在舊MPC機中,把操作數(shù)的偏移地址稱為有效地
址EA。EA是16位無符號數(shù),可通過不同的尋址方
式來得到。
16位系統(tǒng)中的存儲器尋址
?有效地址EA:可由基址寄存器(BX和BP)、變
址寄存器(SI和DI)、指令中給出的8位或16位的
位移量組成。
?不同組合方式,形成不同的尋址方式:
1.直接尋址(DirectAddressing)
2.寄存器間接尋址(RegisterIndirectAddressing)
3.基址尋址(BaseAddressing)
4.變址尋址(IndexedAddressing)
5.基址變址尋址(BaseIndexedAddressing)
直接尋址
?在直接尋址方式中,指令中直接給出操作數(shù)的有效地址,或
者說,有效地址EA就在指令中。
-EA=Disp,Disp存放在指令中
-操作數(shù)表示為[Disp]
■操作數(shù)的有效地址(而不是操作數(shù)本身)存放在代碼段中指
令的操作碼之后,但操作數(shù)一般存放在數(shù)據(jù)段中。
?當(dāng)然,也允許數(shù)據(jù)存放在數(shù)據(jù)段以外的其它段(如附加段)。
此時應(yīng)在指令中給出“段超越前綴”。
?采用直接尋址方式,如果沒有用“段超越前綴”標(biāo)明操作數(shù)
在哪一段,就默認(rèn)段寄存器為DS。
例1
?例1.MOVAX,[2000H];
若(DS)=3000H,則指令的執(zhí)行情況如下圖所示:
低地址執(zhí)行結(jié)果:(AX)=3050H
例2
?如果數(shù)據(jù)在附加段(擴展段)中,則應(yīng)指明“段超
越前綴”。
?例如:
MOVAX,ES:[3000H];
物理地址=16XES+3000H
寄存器間接尋址
?指令中給出寄存器號(寄存器為BX,BP,SI和DI之一),被指定
的寄存器中存放著操作數(shù)的有效地址,操作數(shù)在存儲器中
(以寄存器的內(nèi)容為操作數(shù)的有效地址)。
[BX]..........對應(yīng)段寄存器為DS
EA=[BP]......................................SS
[SI].......................................DS
[DI].......................................DS
?指令中也可以通過“段超越前綴”取得其他段中的數(shù)據(jù)。
例如:MOVAX,ES:[BX]
MOVAX,ES:[SI]
MOVAX,DS:[BP]
Example
?例:MOVAX,[BX];
設(shè)(DS)=2000H,(BX)=1000H
則物理地址=20000H+1000H=21000H
AX高地址
H
50
21000H
指令的執(zhí)行結(jié)果為:
低地址
(AX)=50A0H
基址尋址
?操作數(shù)的有效地址是一個基址寄存器BX或BP的內(nèi)容
與指令中指定的8位或16位位移量(Disp8或Disp16)
之和。
一EA=BX/BP+Disp8/Disp16
?若沒有段超越前綴,則
-當(dāng)基址(變址)寄存器為BX時,段寄存器為DS;
-當(dāng)基址(變址)寄存器為BP時,段寄存器為SS。
?例、MOVAL,[BX+1230H]
變址尋址
?操作數(shù)的有效地址是一個變址寄存器SI或DI的內(nèi)容
與指令中指定的8位或16位位移量(Disp8或
Disp16)之和。
-EA=SI/DI+Disp8/Disp16
?若沒有段超越前綴,則段寄存器為DS。
Example
例、MOVAX,[SI+3000H]
設(shè)(DS)=4000H,(SI)=2000H
則物理地址
=40000H+2000H+3000H位移量
=45000H
操作碼
指令的執(zhí)行情況如圖
數(shù)據(jù)段
低地址
45000H
基址尋址/變址尋址的用途
?這種尋址方式可用于表格的處理。
-通過位移量來設(shè)置表格的首地址;
-利用修改基址寄存器(或變址寄存器)的內(nèi)容來
獲得表項的值。
SI
DS:DISP
DS:OOOO
基址變址尋址
■操作數(shù)的有效地址是一個基址寄存器和一個變址寄存器內(nèi)
容之和,兩個寄存器均由指令指定。
EA=[BX]/[BP]+[SI]/[DI][+Disp16/Disp8]
?[+Disp16/Disp8]為可選項,此時也稱為“相對基址變址
尋址”,或“帶位移量的基址變址尋址方式”。
?[BX]和[BP]只能選用一個,[SI]和[DI]亦然。即[BX]和
[BP]不能相加,[SI]和[DI]也不能相加。
?若基址寄存器為BX,則段寄存器為DS。
?若基址寄存器為BP,則段寄存器為SS。
Example
例:MOVAX,[BX+DI]
設(shè)(DS)=2100H,(BX)=0158H,[DI]=10A5H.
貝ijEA=0158H+10A5H=11FDH
物理地址=21000H+11FDH=221FDH
高地址
這種尋址方式同樣適用
AX
于表格(或數(shù)組)。首地址
可存放在基址寄存器中,
34而用變址寄存器來訪問表
格中的各項。由于兩個寄
12221FDH存器都可以修改使用起來
更靈活。
低地址
Example
例:MOVAX,[BX+SI+0250H]
設(shè)(DS)=3000H,(BX)=2000H,(SI)=1000H,
則
EA=2000H+1000H+0250H=3250H
物理地址=30000H+3250H=33250H
AX
33250H
指令中帶方括號的地址表達式遵循的規(guī)則
1.立即數(shù)可以出現(xiàn)在方括號內(nèi),表示直接地址,例如[2000H]
■注意區(qū)別:movAX,2000HmovAX,[2000H]
2.只有BX/BP,SI/DI四個寄存器可以出現(xiàn)在[]內(nèi)。它們可以
單獨出現(xiàn),也可以組合出現(xiàn)(只能相加),或以寄存器與
常數(shù)相加的形式出現(xiàn)。但BX和BP寄存器不允許同時出現(xiàn)
在一個[]內(nèi),SI和DI也不能同時出現(xiàn)。
?正確:[BX+SI-2]
?不正確:[BX-SI-2]
3.由于方括號有相加的含義,下面幾種寫法等價:
?6[BX][SI]
?[BX+6][SI]
?[BX+SI+6]
指令中帶方括號的地址表達式遵循的規(guī)則
4.若方括號內(nèi)包含BP,則蘊含使用SS來提供基地址。
物理地址=16XSS+EA。
?包含BP的操作數(shù)有下列三種形式:
DISP[BP+SI]
DISP[BP+DI]
DISP[BP]
注:DISP是8位或16位的位移量
允許川段超越前綴將SS修改為CS、DS或ES中的一個。
指令中帶方括號的地址表達式遵循的規(guī)則
5.其余情況蘊含使用DS來提供基地址。物理地址計
算方法為:
物理地址=16XDS+EA
■此時操作數(shù)可以有以下幾種形式:
[DISP]
DISP[BX]或DISP[SI]或DISP[DI]
DISP[BX+SI]
DISP[BX+DI]
?同樣允許用段超越前綴將DS修改為CS、ES或SS中的
隱含尋址
?指令中不指明操作數(shù),但有蘊隱含規(guī)定的尋址方式。
?例如,指令DAA
-它的功能是將兩個壓縮BCD數(shù)相加后的結(jié)果調(diào)
整為正確的壓縮BCD數(shù)。
-兩個壓縮BCD數(shù)相加相加后的結(jié)果在寄存器AL
中,DAA指令調(diào)整后的結(jié)果仍然保存在AL中。
四、I/O端口尋址
?若10端口采用獨立編址的方式,則對10端口的尋址
有以下兩種方式:
-直接端口尋址
端口地址用8位地址碼表示,它是指令的一部分。
如:INAL/AX,21H
-間接端口尋址
此時I。端口的地址由16位表示,并規(guī)定存放在
DX寄存器中。如OUTDX,AL/AX;表示將
AL/AX中的內(nèi)容輸出到地址由DX寄存器內(nèi)容所
指定的端口中。
轉(zhuǎn)移地址的尋址方式
?控制轉(zhuǎn)移的尋址方式:按指令中給出的操作數(shù)轉(zhuǎn)移
到相應(yīng)的目的地址。
一相對尋址
一段內(nèi)寄存器尋址
一段內(nèi)間接轉(zhuǎn)移尋址
一段間直接轉(zhuǎn)移尋址
一段間間接轉(zhuǎn)移尋址
■相關(guān)指令:條件轉(zhuǎn)移指令、無條件轉(zhuǎn)移指令、循環(huán)
指令和調(diào)用指令。
相對尋址
?相對尋址,又稱為段內(nèi)直接轉(zhuǎn)移:以IP的內(nèi)容為基
準(zhǔn)地址,加上緊跟指令操作碼后的相對位移量
DISP,得到轉(zhuǎn)移地址的偏移量。
?例1、條件轉(zhuǎn)移指令JEA
?例2、無條件轉(zhuǎn)移指令JMPADDR
-指令中的A、ADDR為轉(zhuǎn)移地址的標(biāo)號,且標(biāo)號
為“近型標(biāo)號”(即“Near”型標(biāo)號)。
相對尋址
段內(nèi)寄存器尋址
?段內(nèi)寄存器尋址:以寄存器的內(nèi)容為轉(zhuǎn)移地址的偏
移地址。
?例如,指令JMPBX
-BX中的內(nèi)容即為偏移地址。
—BXfIP,CS值不變。
?16位微處理器中,AX、BX、CX、DX、SP、BP、
SI和DI都可以用作目標(biāo)地址的寄存器。
?注意:僅用于段內(nèi)尋址。
段內(nèi)間接轉(zhuǎn)移尋址
?段內(nèi)間接轉(zhuǎn)移尋址
-包括前述的存儲器操作數(shù)中的寄存器間接尋址、
變址尋址、基址尋址、基址變址尋址等幾種尋址
方式,這些尋址方式求得的操作數(shù)即為轉(zhuǎn)移地址
的偏移地址。
?例1、JMPWORDPTR[BX]
?例2、JMPVAR[BX][SI]
-指令中的[BX]、VAR[BX][SI]都表示段內(nèi)間接轉(zhuǎn)
移地址為彳扁移地址。
段間直接轉(zhuǎn)移尋址
?段間轉(zhuǎn)移:程序從一個代碼段轉(zhuǎn)移到另一個代碼段。
一不僅要求改變IP中的指令偏移地址,還要改變
CS中的段基值。
目
標(biāo)
代
?段間直接轉(zhuǎn)移尋址:轉(zhuǎn)移指碼
段
令中帶有兩個16位地址,第
一個地址位轉(zhuǎn)移地址的偏移
值,第二個地址位轉(zhuǎn)移地址
CS當(dāng)
的段基值。前
IP代
碼
段
段間間接轉(zhuǎn)移尋址
?段間間接轉(zhuǎn)移尋址:實現(xiàn)數(shù)
據(jù)
段間轉(zhuǎn)移所需的兩個16段
位地址,可以用任何數(shù)據(jù)
存儲器的間接尋址方式求
得。目
標(biāo)
代
碼
段
?匯編指令形式:
JMPDWORDPTR[EA]當(dāng)
前
代
碼
段
尋址方式小結(jié)
?操作數(shù)尋址方式
-立即尋址、寄存器尋址、存儲器尋址I/O端口尋址
?轉(zhuǎn)移地址的尋址方式
一段內(nèi)轉(zhuǎn)移、段間轉(zhuǎn)移
練習(xí)
1.在16位系統(tǒng)中,下列指令中的源操作數(shù)和目的操
作數(shù)分別采用什么尋址方式?
①MOVAX,OOFFH;
②MOVAL,[BX+100];
③MOVX,[SI+BX];
④MOV[BX+DI+10H],AH;
⑤MOV[BP+1054H],AX;
⑥MOVAX,[SI];
練習(xí)
2.設(shè)DS=1000H,ES=2000H,SS=3500H,SI=OOAOH,DI
=0024H,BX=0100H,BP=0200H,數(shù)據(jù)段中變量名為
VAL的偏移地址值為0030H,試說明下列源操作數(shù)字段的
尋址方式是什么?物理地址值是多少?
①MOVAX,[100H]
②MOVAX,VAL
③MOVAX,[BX]
④MOVAX,ES:[BX]
⑤MOVAX,[SI]
⑥MOVAX,[BX+10H]
⑦MOVAX,[BP]
⑧MOVAX,VAL[BP][SI]
⑨MOVAX,VAL[BX][DI]
⑩MOVAX,[BP][DI]
5.2傳送類指令
斗
6系列指令分類:
■傳送類指令
■數(shù)據(jù)操作類指令
■算數(shù)運算
■邏輯運算
■串操作指令
■控制類指令
■程序控制轉(zhuǎn)移
■處理器控制
傳送類指令
■傳送類指令是指令系統(tǒng)中最活躍的一類指令,也是條
數(shù)最多的一類指令,主要用于數(shù)據(jù)的保存及交換等場
合。
■傳送類指令可以分為4種:
■通用數(shù)據(jù)傳送指令
■目標(biāo)地址傳送指令
■標(biāo)志位傳送指令
■I/O數(shù)據(jù)傳送指令
傳送類指令
指令指令格式指令功能狀態(tài)標(biāo)志位備注
類型0SZAPC
通用數(shù)MOVH標(biāo),源傳送字節(jié)或字源:R、M、立即數(shù)目標(biāo):R、M
據(jù)傳送PUSH源字壓入堆棧--------------------------源:R、M
POP目標(biāo)字彈出堆棧目標(biāo):R(CS除外)、M
XCHG目標(biāo),源交換字節(jié)或字源:通用R、M目標(biāo):通用R、M
XLAT字節(jié)翻譯
目標(biāo)地LEA目標(biāo),源裝入有效地址--------------------------源:內(nèi)存操作數(shù)目標(biāo):16位通用R
址傳送LDS目標(biāo),源裝入數(shù)據(jù)段指針到DS源:內(nèi)存操作數(shù)目標(biāo):16位通用R
LES目標(biāo),源裝入附加段指針到ES源:內(nèi)存操作數(shù)目標(biāo):16位通用R
標(biāo)志位LAHF把FR低字節(jié)裝入AH
傳送SAHF把AH內(nèi)容裝入FR低字節(jié)
PUSHF把FR內(nèi)容壓入堆棧
POPF從堆棧中彈出FR內(nèi)容
I/O數(shù)IN累加器,端口輸入字節(jié)或字--------------------------累加器:AL或AX
據(jù)傳送OUT端口,累加器輸出字節(jié)或字端口:地址0?255或間接寄存器DX
■:運算結(jié)果影響標(biāo)志位
運算結(jié)果不影響標(biāo)志位
5.2.1通用數(shù)據(jù)傳送指令
!通用傳送指令中包括最基本的傳送指令MOV,
堆棧指令PUSH和POP,數(shù)據(jù)交換指令XCHG
和XLAT。
-通用數(shù)據(jù)傳送指令包括:
1.傳送指令MOV
2.數(shù)據(jù)交換指令XCHG
3.查表轉(zhuǎn)換指令XLAT
4.堆棧操作指令PUSH和POP
1.最基本的傳送指令MOV
MOV指令是形式最簡單、用得最多的指令。它可以
實現(xiàn)CPU內(nèi)部寄存器之間的數(shù)據(jù)傳送、寄存器和內(nèi)
存之間的數(shù)據(jù)傳送,還可以把一個立即數(shù)送給CPU
的內(nèi)部寄存器或內(nèi)存單元。
■語句格式:MOVOPD,OPS
-功能:將源操作數(shù)傳送入目的地址,源地址內(nèi)容不
變。即(OPS)一OPD。
■對標(biāo)志位的影響:無
字節(jié)類型與類型
MOV指令所允許的數(shù)據(jù)傳送路徑及類型
例如:
■MOVAX,BUF
■MOVBH,[DI]
■MOVDI,ES:[SI]
■MOVBP,3[BX+SI]
■MOVBUFA,DL
■MOV[BP],AX
■MOVDS:[BP],DL
■MOVBUF,DS
■MOVES,BUF
.MOV指令的幾點說明:
I)雙操作數(shù)指令不允許兩個操作數(shù)同時為段寄存器或存儲
器操作數(shù)
MOVseg,seg;錯誤
MOVmem,mem;錯誤
(2)立即數(shù)不能傳送到段寄存器中。
MOVseg,imm;錯誤
(3)目的操作數(shù)不允許使用CS段寄存器。
(4)指令指針I(yè)P,不能作為MOV指令的操作數(shù)
(5)dest與src必須類型匹配,即同時是字節(jié)或字類型。
(6)MOV指令不影響標(biāo)志寄存器的值。
[幾點注意:
相存器具有明確的類型,例如,AL、AX分別為字節(jié)、字
類型。若立即數(shù)沒有明確的類型,MASM負(fù)責(zé)將立即數(shù)擴
展為與目的操作數(shù)位數(shù)相同。
■有時MASM不能確定內(nèi)存操作數(shù)的類型,需要用byteptr
和wordptr明確指出是字節(jié)或字類型。
-如,判斷下述指令是否正確:
MOV[2345H],12
例:;分析如下MOV指令的正確性:
?MOVAX,BL;類型不匹配
?MOVDS,1000H;不允許立即數(shù)送段寄存器
?MOV[BX],[SI];不允許內(nèi)存操作數(shù)之間傳送
?MOVES,CS;不允許段寄存器之間傳送
?MOVCS,AX;CS不能作為目的操作數(shù)
例:設(shè)B是已定義的字節(jié)變量,判斷指令的正確性。
?MOVAX,B
;錯誤,類型不匹配
?MOVAL,0
;正確,MASM可以判斷出要送字節(jié)0
練習(xí)1
■用MOV指令實現(xiàn)兩內(nèi)存字節(jié)單元內(nèi)容
的交換,要求使用直接尋址和寄存器尋
址兩種方式來實現(xiàn)。
2035H01H
2045H02H
用直接尋址方式實現(xiàn)
MOVBL,[2035];
MOVCL,[2045H];
MOV[2045H],BL;
MOV[2035H],CL;
HLT
用寄存器間接尋址方式實現(xiàn)
MOVSI,2035H;
MOVDI,2045H;
MOVAH,[SI];
MOVAL,[DI];
MOV[2035H],AL;
MOV[2045H],AH;
N.交換指令
■交換指令XCHG可以實現(xiàn)字節(jié)交換,也可以實現(xiàn)字交換。
■格式:XCHGDEST,SRC;
-功能:將源操作數(shù)與目的操作數(shù)的內(nèi)容互換。
■交換過程可以在CPU的內(nèi)部寄存器之間進行,也可以在內(nèi)
部寄存器和存儲單元之間進行,但不能在兩個存儲單元之
間執(zhí)行數(shù)據(jù)交換過程。
■例如:
XCHGAL,BL
XCHGBX,CX
XCHG[2530],CX
3.換碼指令
■XLAT是一條完成字節(jié)翻譯功能的指令,它可以使累加
器中的一個值變換為內(nèi)存表格中的某一個值,一般用來
實現(xiàn)編碼制的轉(zhuǎn)換。
■語句格式:XLAT
-功能:將(BX)為首址(AL)為位移量的字節(jié)存儲單元
中的數(shù)據(jù)送AL寄存器。即([BX+AL])—AL。
■使用換碼指令時,要求BX寄存器指向表的首地址,AL
的內(nèi)容為表中某一項與表格首地址之間的偏移量,指令
執(zhí)行時,會將BX和AL中的值相加,把得到的值作為地
址,然后將此地址所對應(yīng)的單元中的值取到AL中去。
?圖5.6表示了換碼指令的功能。XLAT指令就是通過查
表方式來完成翻譯功能的,因此,在執(zhí)行該指令之前,
必須建立好一張翻譯表,該表的最大容量為256字節(jié)。
■執(zhí)行XLAT指令可將任意一個十進制數(shù)翻譯成7段顯示
碼,其操作步驟如下:
(1)將譯碼表定位到某個邏輯段的一片連續(xù)地址中,并將其表首
址的偏移地址置入BX寄存器中。
(2)將待翻譯的十進制數(shù)字送入AL寄存器中。
(3)執(zhí)行XLAT指令。
■例如,假設(shè)這段數(shù)據(jù)存放在偏移地址為2000H開始的
內(nèi)存中,取出“3”所對應(yīng)的7段碼,用如下幾條程序助
記符即可完成:如七段數(shù)碼管顯示控制程序
MOVBX,2000H
MOVAL,3
XLAT
旨令
F棧作用:
-在調(diào)用一個過程時,保存返回地址;
■暫時存放寄存器或存儲器單元操作數(shù)的內(nèi)容。
進棧PUSHSRC;
操作:
(SP)6(SP)-2
((SP)+i,(SP))q(SRC)
出棧POPDST;
操作:(DST)Q((SP)+1,(SP))
(SP)((SP)+2
試分析如下兩條指令執(zhí)行
后,SP的變化情況:
01F8
PUSHAX
01FA
POPAX01FC
01FE
堆棧
(執(zhí)行PUSHAX之前)
01F8堆棧
(執(zhí)行PUSHAX之后)
5.2.1通用數(shù)據(jù)傳送指令(3)
■例如,將16位通
用寄存器CX的內(nèi)容
壓入堆棧,然后,
彈出棧頂至CX中,已
知:(SS)=0200H,
(SP)=0008H,(CX)
=12FAHo
5.2.1通用數(shù)據(jù)傳送指令(4)
?5.2.2目標(biāo)地址傳送指令
-這是一類專用于傳送地址碼的指令,可用來傳送操作
數(shù)的段地址或偏移地址,共包含以下3條指令:
1.取有效地址指令LEA
2.取偏移地址及數(shù)據(jù)段首址指令LDS
3.取偏移地址及附加數(shù)據(jù)段指令LES
1.取有效地址指令LEA
語句格式:LEAOPD,OPS
功能:將存儲器地址送到一個寄存器,主存按源地址的
尋址方式計算偏移地址,將偏移地址送入指定寄存器。
LEA指令格式中,要求源操作數(shù)必須為內(nèi)存單元地址目
的操作數(shù)必須為一個16位的通用寄存器。
例如:
LEAAX,[2728]
LEABX,[BP+SI]
LEA指令與MOV指令的區(qū)別:
LEASI,BUFF;將標(biāo)號BUFF的偏移地址送入寄存器中
MOVSLBUFF;將標(biāo)號BUFF所指存儲單元的內(nèi)容送入SI
段起始地址
LEASI,BUFF;
執(zhí)行后:(SI)=0002H
MOVSI,BUFF;
執(zhí)行后:(SI)=0048H
2,將地址指針裝到DS和另一個寄存器的指令
■語句格式:LDSOPD,OPS
■功能:把4個字節(jié)的地址指針(其中包括一個段地址和一
個偏移量)傳送到兩個目的寄存器,其中,地址指針的后
兩個字節(jié)即段地址一定送到DS中。
該指令常指定S1寄存器。
高16位DS(隱含)
OPS
(32位,低16位DEST的REG
4字節(jié))
LDS或LES指令將源操作數(shù)指定的4個連續(xù)字節(jié)單元內(nèi)容分別送
入指令指定的寄存器以及DS或ES中。
其中:低16位送到一個指定的字寄存器,高16位送到DS或ES中。
例:(DS)=COOOH,[C2480H]=1357H,[C2482H]=2468H
LDSSI,[2480H]
DS:2480H
DS:2481H
DS:2482H
SI
DS:2483H
DS
I3.將地址指針裝到ES和另一個寄存器的指令
■語句格式:LESOPD,OPS
.LES指令與LDS指令的操作基本相同
■區(qū)別:將源操作數(shù)所指向地址指針中的段基址
(后兩個字節(jié))傳送到ES段寄存器,而不是DS段
寄存器。
5.23標(biāo)志位傳送指令
可完成標(biāo)志位傳送的指令共有4條:
1.讀取標(biāo)志指令LAHF
2.設(shè)置標(biāo)志指令SAHF
3.標(biāo)志寄存器進棧指令PUSHF
4.標(biāo)志寄存器出棧指令POPF
.L讀取標(biāo)志指令
廣語句格式:LAHF
■功能:將標(biāo)志寄存器的低8位送入AH寄存器。
■即(FLAGS)7-0-AH。讀取標(biāo)志指令LAHF被執(zhí)
行時,將標(biāo)志寄存器中的低8位傳送到AH中。
■該指令的執(zhí)行對標(biāo)志位無影響。
2.設(shè)置標(biāo)志指令SAHF
■語句格式:SAHF
■功能:將AH的內(nèi)容送入標(biāo)志寄存器的低8位,高
8位不變。即(AH)-FLAGS7-0.。
■從該指令功能可看出,SAHF為LAHF的逆過程。
■設(shè)置標(biāo)志指令SAHF被執(zhí)行后,標(biāo)志寄存器內(nèi)容改變,
該指令的執(zhí)行會影響PSW
3.對標(biāo)志寄存器的壓入堆棧指令和彈出堆棧指令
■PUSHF指令將標(biāo)志寄存器的值壓入堆棧頂部,同時,堆
棧指針SP的值減2
-POPF指令的功能正好相反,此指令在執(zhí)行時從堆棧中彈
出一個字送到標(biāo)志寄存器中,同時堆棧指針SP的值加2。
■PUSHF和POPF指令一般用在子程序和中斷處理程序的首
尾,起保存主程序標(biāo)志和恢復(fù)主程序標(biāo)志的作用。
■注:
-LAHF/SAHF指令是寄存器AH與標(biāo)志寄存器PSW
的低字節(jié)之間完成的字節(jié)型數(shù)據(jù)傳送。
-LAHF/SAHF指令是寄存器AH與標(biāo)志寄存器PSW
的低字節(jié)之間完成的字節(jié)型數(shù)據(jù)傳送。
■PUSHF/POPF指令是標(biāo)志寄存器PSW與堆棧間進
行的字型數(shù)據(jù)傳送。
-指令SAHF/POPF將影響標(biāo)志位。
、5.2.4輸入/輸出數(shù)據(jù)傳送指令
M----------------------
1.輸入指令I(lǐng)N
2.輸出指令OUT
攻
CPU
II/O線
攻
1.輸入指令I(lǐng)N
■輸入指令用來從指定的外設(shè)寄存器取信息送入
累加器。它有四種形式:
(1)語句格式:INAL,PORT
功能:(PORT)一AL
語句格式:INAX,PORT
功能:(PORT)一AX
語句格式:INAL,DX
功能:([DX])一AL
(4)語句格式:INAX,DX
功能:([DX])一AL
■直接IN指令(口地址只能8位)
INAL,50H
INAX,80H
■間接IN指令(口地址是16位,也可8位。)
MOVDX,0FFF2H
INAL,DX
2.輸出指令OUT
(1)語句格式:OUTPORT,AL
功能:(AL)一PORT
(2)語句格式:OUTPORT,AX
功能:(AX)一PORT
(3)語句格式:OUTDX,AL
功能:(AL)一[DX]
(4)語句格式:OUTDX,AX
功能:(AX)一[DX]
■直接OUT指令(口地址只能8位)
OUT44H,AL
OUT70H,AX
■間接OUT指令(口地址是16位,也可8位。)
MOVDX,87FEHMOVDX,80H
MOVAL,40HOUTDX,AL
OUTDX,AL
5.3數(shù)據(jù)操作類指令
■86系列CPU指令系統(tǒng)中,具有完備的加、減、乘、除
算術(shù)運算指令,可處理不帶符號或帶符號的8/16位二
進制整數(shù),以及不帶符號的裝配型/拆開型十進制整數(shù)。
數(shù)據(jù)操作類指令包括以下幾種類型的指令:
■算術(shù)運算指令
-加法指令
-減法指令
-乘法指令
■除法指令
-BCD碼運算(十進制調(diào)整)指令*
■邏輯運算和移位指令
■邏輯運算指令
■移位指令
■循環(huán)移位指令
5.3.1算術(shù)運算類指令
孝加法指令
■不帶進位的加法ADD
格式:ADDDEST,SRC;DEST+SRC-DEST
■帶進位的加法ADC
格式:ADCDEST,SRC;DEST+SRC+CF->DEST
■加1指令I(lǐng)NC
格式:INCDEST;DEST+1-DEST(不影響CF)
SRC:n,通用REG,M三種尋址方式
DEST:通用REG,M兩種尋址方式
■立即數(shù)不能做目的操作數(shù),DEST,SRC不能同為存儲器尋址方式,
類型要一致,段寄存器不能做操作數(shù)。
■說明:這在三條指令運算結(jié)果將影響狀態(tài)標(biāo)志位,但是INC指令不影響
本小/LSCFo
](1)不帶進位位的加法指令:
ADD用來執(zhí)行兩個字或兩個字節(jié)的相加操作,結(jié)果放在原
來存放目的操作數(shù)的地方。
例如:
ADDAL,50H
ADDDLSI
ADD[BX+DI],AX
(2)帶進位位的加法指令
ADC指令被執(zhí)行時,將進位標(biāo)志CF的值加在和中。
例如:
ADCAX,SI
ADCDX,[SI]
練習(xí)
■試編寫程序?qū)崿F(xiàn)兩個4字節(jié)的無符
號數(shù)相加,這兩個數(shù)分別存放在
2000H和3000H開始的存儲單元中,
低位在前,高位在后,進行加法運
算后得到的和2000H開始的內(nèi)存單
元中。
程序如下:
CLC
MOVSL2000H
MOVAX,[SI]
MOVDL3000H
ADDAX,[DI]
MOV[SI],AX
MOVAX,[SI+2]
ADCAX,[DI+2]
MOV[SI+2],A
1(3)增量指令:
千INC只有1個操作數(shù),指令在執(zhí)行時,將操作數(shù)的內(nèi)容
加1,再送回該操作數(shù)。
■一般用在循環(huán)程序中修改指針和循環(huán)次數(shù)。
例如:
INCAL
INCCX
INCBYTEPTR[BX+DI+500]
在編程中要注意,INC指令不影響進位標(biāo)志CF的狀態(tài)。
2,減法指令
-不帶借位減法SUB
格式:SUBDEST,SRC;DEST-SRCDEST
-帶借位減法SBB
格式:SBBDEST,SRC;DEST-SRC-CFDEST
■減工指令DEC
格式:DECDEST;DEST-1DEST
■取補指令NEG:
格式:
■比較指令CMP
格式:CMPDEST,SRC;DEST-SRC(不回送結(jié)果)
■除DEC不影響CF外,其他都按一般規(guī)則影響狀態(tài)標(biāo)志位。
(1)不帶借位的減法指令SUB:
SUB完成兩個字節(jié)或兩個字的相減,結(jié)果存于目的地址,源
地址內(nèi)容不變。
例如:
SUBBX,CX
SUB[BP+2],CL
SUBAL,20
SUBWORDPTR[DI],1000H
■^⑵帶借位的減法指令SBB
■SBB在形式上和功能上都和SUB指令類似,只是SBB指令在執(zhí)
行減法運算時,還要減去CF的值。
-SBB在執(zhí)行減法運算時,用被減數(shù)減去減數(shù),并減去低位字
節(jié)相減時產(chǎn)生的借位。
例如:
SBBAX,2030H
SBBWORDPTR[DI+2],1000H
3?(3)減量指令DEC:
-功能:將目的操作數(shù)減1,結(jié)果送目的地址。
■DEC只有1個操作數(shù)。
■DECm令是一個單操彳乍數(shù)指令,操作數(shù)可以是寄存器或
存儲器操作數(shù)。
-減1指令DEC也一般用于對計數(shù)器和地址指針的調(diào)整。
例如:
DECAX
DECBL
DECBYTEPTR[DI+2]
4(4)取補指令NEG:
7功能:將目的操作數(shù)的每一位求反(包括符號位)后
加1,結(jié)果送目的地址。
-因為對一個操作數(shù)取補碼相當(dāng)于用。減去此操作數(shù),所
以NEG指令執(zhí)行的也是減法操作。
■例如:
NEGAL
NEGCX
&(5)比較指令CMP
-功能:執(zhí)行目的操作數(shù)減源操作數(shù),結(jié)果只影響標(biāo)志位,
不送回相減的結(jié)果。
-一般情況,CMP指令后面經(jīng)常會有一條條件轉(zhuǎn)移指令,
用來檢查標(biāo)志位的狀態(tài)是否滿足了某種關(guān)系。
例如:
CMPAX,2000H
CMPAL,50H
CMPAX,[BX+DI+100]
CMPDX,DI
1限乘法指令
■乘法運算是雙操作數(shù)運算,但是,在指令中卻只指定
一個操作數(shù),另一個操作數(shù)是隱含規(guī)定的。
■其中的操作數(shù)可以是寄存器操作數(shù)或存儲器操作數(shù),而隱含的為
AL或AX。
指令格式:
無符號數(shù)乘法MULSRC;(AX)-(AL)*(SRC)字節(jié)乘法
;(DX,AX)-(AX)*(SRC)字乘法
帶符號數(shù)乘法IMULSRC;操作同上
8位乘法
RH(8位)
字節(jié)運算字運算
?注:
?乘法指令運算結(jié)果只影響狀態(tài)標(biāo)志CF、OFo
?SRC只能是通用REG或M尋址,不能是立即數(shù)。
?只能是字節(jié)乘字節(jié)或字乘字
?存儲器尋址時加類型說明,如MULBYTEPTR[BX],
MULWORDPTR[BX]
、.4.除法指令
-指令格式:
無符號數(shù)除法DIVSRC
帶符號數(shù)除法IDIVSRC
■在除法運算中,如果除數(shù)8位的,則要求被除數(shù)是16位的;
如果除數(shù)是16位的,則要求被除數(shù)是32位的。
操作數(shù)
?注:
-當(dāng)除數(shù)是字節(jié)數(shù)據(jù)時,被除數(shù)必須放在AX中;當(dāng)除數(shù)是字?jǐn)?shù)據(jù)時,
被除數(shù)必須放在DX,AX中。
-除法指令運算結(jié)果對狀態(tài)標(biāo)志無定義。
-8086/8088規(guī)定IDIV指令運算結(jié)果余數(shù)的符號與被除數(shù)相同。
-帶符號數(shù)除法運算中,當(dāng)被除數(shù)位數(shù)不夠時,可進行擴展。
-若商超出字或字節(jié)表示的范圍,自動產(chǎn)生0號中斷
53.2邏輯運算和移位指令
1.邏輯運算指令
-求反指令NOT
■邏輯乘指令A(yù)ND
.測試指令TEST
-邏輯加指令OR
■按位加指令XOR
■AND,OR和XOR指令都是雙操作數(shù)指令,即可對
8位數(shù)操作,也可對16位數(shù)操作
-當(dāng)有兩個操作數(shù)時,不能同時都為存儲器操作數(shù)
■無論是目的操作數(shù),還是源操作數(shù),都不能是段寄存
—Bro
■AND指令主要用來屏蔽掉一個數(shù)中某些位,以便對剩下的
其它位進行某些處理。對兩個操作數(shù)都是1的位,目的操作
數(shù)相對應(yīng)位就是1,其它各種組合的位,目的操作數(shù)相應(yīng)位
都是0。
例:
■ANDAX,BX
■ANDAL,11110000B
■ANDMEM-BYTE,AL
■OR指令在兩個操作數(shù)相對應(yīng)位中有一個是1或兩個都
是1時,在目的操作數(shù)的該位產(chǎn)生一個1。
■例:ORBX,0C000B
-XOR指令主要用于判斷兩個操作數(shù)中哪些位是不同的。
如兩個操作數(shù)相對應(yīng)位的值不同時,在目的操作數(shù)產(chǎn)
生一個1。相同為0,不同為1。
■例:XORBX,0C000B
XORAX,AX
■NOT指令的操作數(shù)只有一個,它求出指令所給的操作
數(shù)的反碼,再送回。
-NOT指令改變寄存器或存儲單元的每一位狀態(tài),原來
為0變?yōu)?,原為1變?yōu)?。
■例:
NOTAX
NOTAL
NOTBX
NOTWORDPTR[1000H]
-TEST指令是一條測試指令,它執(zhí)行的操作與AND相同,
不過它不送回結(jié)果,只影響標(biāo)志位。
■例如:
TESTAX,8000H;如AX的最高位為1,則ZF=O,否則ZF=1
TESTAL,01;如AL的最低位為1,則ZF=0,否則ZF=1
■例:試用一段小程序?qū)崿F(xiàn)奇偶校驗
的補偶操作
在傳送ASCII碼給外設(shè)時,常將最
高位作為奇偶校驗位,假定ASCII碼存
入AL中,AL的最高位初始為0
ANDAL,AL;(AL)與(AL)進行與操作,結(jié)果影響
;PF標(biāo)志
JPNEXT;若PF=1,轉(zhuǎn)至NEX1;PF=O,順序執(zhí)行
ORAL,10000000B;最高位補1,以使傳送字節(jié)中的1的
;個數(shù)為偶數(shù)
NEXT:
■■■;補偶后,往下繼續(xù)執(zhí)行
■移位與循環(huán)移位指令
;8086有4條移位指令和4條循環(huán)移位指令
■功能:將目的操作數(shù)的所有位按操作符規(guī)定的方式移
動1位或按寄存器CL規(guī)定的次數(shù)(0?255)移動,結(jié)果
送入目的地址。
■算術(shù)移位n,可相當(dāng)于把二進制數(shù)乘以或除以2n
-邏輯移位則用于截取字或字節(jié)中的若干位
對標(biāo)志位的影響:
-移位指令的執(zhí)行結(jié)果會影響PF、SF、ZF和CF,并且CF總是等與目
的操作數(shù)最后移出的那一位的值;
■AF是不定的
■若只移動一位,且執(zhí)行的結(jié)果使最高位(符號位)發(fā)生變化,則
OF置1,否則置0,若移位大于1,則OF不定。
(1)非循環(huán)移位指令:
.算術(shù)左移SAL
-算術(shù)右移指令SAR
-邏輯左移SHL
-邏輯右移指令SHR
■邏輯移位指令在執(zhí)行時,實際上是把操作數(shù)看成無符
號數(shù)來進行移位,所以右移時,最高位添0
■算術(shù)移位指令在執(zhí)行時,則將操作數(shù)看成有符號數(shù)來
進行移位,所以,右移時保持最高位的值不變,這里
的最高位就是符號位。
最高位最低位
0
(a)算術(shù)左移指令SAL
及邏輯左移指令SHL
最高位最低位
CF
(b)算術(shù)右移指令SAR
最高位最低位
(c)邏輯右移指令SHR
■■■■■■例:將兩個非壓縮BCD碼
「(高位在BL,低位在AL)合
K7Jj并成壓縮BCD碼送AL。
MOVCL,4;將計數(shù)值送CL
SHLBL,CL;將高位移到BL的高4位
ANDAL,OFH;清零AL高4位
ORAL,BL;合并AL和BL形成壓縮BCD碼。
-當(dāng)n=:L時,1寫在指令中,如常SHLAL,1
■當(dāng)n大于1時,將計數(shù)值n寫入CL,再把CL寫入指令,如
MOVCL,3
SHLBX,CL
■這類指令都把CF看做第9位或第17位參加運算。
-算術(shù)移位是對帶符號數(shù),邏輯移位是對無符號數(shù)而言。SAL要判斷OF,
OF=工結(jié)果無效(符號變),SAR要保持符號位不變。
(2)循環(huán)移位指令:
?8086指令系統(tǒng)中有4條循環(huán)移位指令:
-不帶進位位的循環(huán)左移指令ROL(rotateleft)
-不帶進位位的循環(huán)右移指令ROR(rotateright)
—帶進位位的循環(huán)左移指令RCL(rotatethroughCFleft)
—帶進位位的循環(huán)右移指令RCR(rotatethroughCFright)
最高位最低位最高位最低位
CF.CF?'?
(a)不帶CF的循環(huán)左移指令ROL(c)帶CF的循環(huán)左移指令RCL
最高位最低位最高位最低位
r*CF-------------?-
(b)不帶CF的循環(huán)右移指令ROR(d)帶CF的循環(huán)右移指令RCR
丁循環(huán)移位指令的操作數(shù)可以是寄存器,也可以是存儲單元。
可以是字節(jié),也可以是字。
■如果循環(huán)移位指令只移
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- BIM工程師-全國《BIM應(yīng)用技能資格》押題密卷2
- 滬科版八年級物理全一冊《第三章光的世界》單元檢測卷帶答案
- 廣州版小學(xué)五年級英語下冊知識點和練習(xí)題
- 遞推技術(shù)在信號處理中的使用
- 利用壓縮空氣實現(xiàn)大規(guī)模儲能
- 2024高中地理第四章地表形態(tài)的塑造章末知識整合學(xué)案新人教版必修1
- 2024高中生物第二章動物與人體生命活動的調(diào)節(jié)第1節(jié)通過神經(jīng)系統(tǒng)的調(diào)節(jié)訓(xùn)練含解析新人教版必修3
- 2024高考地理一輪復(fù)習(xí)第十五單元區(qū)域生態(tài)環(huán)境建設(shè)考法精練含解析
- 2024高考化學(xué)一輪復(fù)習(xí)第5章物質(zhì)結(jié)構(gòu)與性質(zhì)元素周期律第15講原子結(jié)構(gòu)核外電子排布規(guī)律學(xué)案
- 2024高考?xì)v史一輪復(fù)習(xí)方案專題三現(xiàn)代中國的政治建設(shè)祖國統(tǒng)一與對外關(guān)系第7講現(xiàn)代中國的政治建設(shè)與祖國統(tǒng)一教學(xué)案+練習(xí)人民版
- Linux操作系統(tǒng)應(yīng)用(麒麟系統(tǒng))PPT完整全套教學(xué)課件
- 初三物理寒假課程
- 如何預(yù)防心腦血管病
- LY/T 3321-2022草原生態(tài)價值評估技術(shù)規(guī)范
- 管理科學(xué)技術(shù)名詞
- 醫(yī)美整形BOTOX除皺抗衰專場活動規(guī)劃方案
- 基于單片機的飛機發(fā)動機轉(zhuǎn)速在線檢測系統(tǒng)
- 《新媒體文案創(chuàng)作與傳播》期末試卷1
- 人感染H7N9禽流感流行病學(xué)調(diào)查和處置
- 高等院校內(nèi)部控制多模型決策方法研究
- 木棧道專項施工方案(同名3601)
評論
0/150
提交評論