微機原理與接口技術除法指令_第1頁
微機原理與接口技術除法指令_第2頁
微機原理與接口技術除法指令_第3頁
微機原理與接口技術除法指令_第4頁
微機原理與接口技術除法指令_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

微機原理與接口技術除法指令第一頁,共二十三頁,2022年,8月28日進行除法時:16位/8位→8位商,8位余數(shù)

32位/16位→16位商,16位余數(shù)對被除數(shù)、商及余數(shù)存放有如下規(guī)定:

被除數(shù)

余數(shù)16位/8位AXAL AH字節(jié)操作

32位/16位 DX:AX AX DX字操作第二頁,共二十三頁,2022年,8月28日4.1除法指令——無符號數(shù)的除法指令格式:

DIV

SRC操作:字節(jié)操作(AL)(AX)/(SRC)的商

(AH)(AX)/(SRC)的余數(shù)字操作(AX)(DX,AX)/(SRC)的商

(DX)(DX,AX)/(SRC)的余數(shù)

例:

DIVCL

DIVWORDPTR[BX]第三頁,共二十三頁,2022年,8月28日4.2除法指令——有符號數(shù)的除法指令格式:IDIVSRC

操作與DIV類似。商及余數(shù)均為有符號數(shù),且余數(shù)符號總是與被除數(shù)符號相同。注意:

對于DIV/IDIV指令

AX(DX:AX)為隱含的被除數(shù)寄存器。

AL(AX)為隱含的商寄存器。

AH(DX)為隱含的余數(shù)寄存器。

SRC不能為立即數(shù)。

對所有標志位均無定義。第四頁,共二十三頁,2022年,8月28日關于除法操作中的字長擴展問題除法運算要求被除數(shù)字長是除數(shù)字長的兩倍,若不滿足則需對被除數(shù)進行擴展,否則產(chǎn)生錯誤。

1)無符號數(shù)除法擴展,只需將AH或DX清零即可。

2)有符號數(shù)而言,則是符號位的擴展。可使用符號擴展指令CBW和CWD。第五頁,共二十三頁,2022年,8月28日格式:CBW功能:將AL中的符號位擴展到AH中,即當AL<80H,執(zhí)行CBW后,AH=0;

AL>=80H時,執(zhí)行CBW指令后,AH=FFH。注意:不影響標志位4.3擴展指令格式:CWD功能:將AX中的符號位擴展到DX中,即當AX<8000H,執(zhí)行CWD后,DX=0;AX>=8000H時,執(zhí)行CWD指令后,DX=FFFFH。注意:不影響標志位第六頁,共二十三頁,2022年,8月28日例題:二進制四則混合算術運算試計算:

AX (V-(X*Y+Z-540))/X之商

DX 余數(shù)(X,Y,Z,V均為有符號字變量)MOVAX,X;MOVBX,YIMULY;MOVCX,AX;MOVBX,DX;MOVAX,Z;CWDADDCX,AX;ADCBX,DX;將符號擴展后的Z加到BX:CX中的乘積中去X*Y,結(jié)果在DX:AX中將乘積存在BX:CX中第七頁,共二十三頁,2022年,8月28日SUBCX,540;SBBBX,0;MOVAX,V;CWD;SUBAX,CX;SBBDX,BX;MOVBX,XIDIVBX;從BX:CX中減去540從符號擴展后的V中減去(BX:CX)并除以X,商在AX中,余數(shù)在DX中。第八頁,共二十三頁,2022年,8月28日二算術運算指令1加法指令2減法指令3乘法指令4除法指令5十進制調(diào)整指令十進制調(diào)整指令壓縮BCD碼加法調(diào)整指令DAA壓縮BCD碼減法調(diào)整指令DAS非壓縮BCD碼加法調(diào)整指令AAA

非壓縮BCD碼減法調(diào)整指令AAS

乘法的BCD碼調(diào)整指令AAM

除法的BCD碼調(diào)整指令AAD

第九頁,共二十三頁,2022年,8月28日共6條,均為隱含尋址方式,隱含的操作數(shù)是

AL或AL、AH;不能單獨使用,要緊跟在相應的算術運算指令之后;執(zhí)行結(jié)果為壓縮BCD碼或非壓縮BCD碼表示的十進制數(shù)。BCD碼調(diào)整指令的說明第十頁,共二十三頁,2022年,8月28日例:將十進制數(shù)8762用壓縮型BCD碼表示,則為:1000011101100010非壓縮型BCD碼:00001000000001110000011000000010在PC機中,根據(jù)在存儲器中的不同存放格式,BCD碼又分為壓縮(組合)BCD碼:1字節(jié)(8位)中存放2個十進制數(shù)碼非壓縮(分離)BCD碼:1個字節(jié)只存放1個十進制數(shù)第十一頁,共二十三頁,2022年,8月28日格式:DAA

;調(diào)整AL中的和為壓縮BCD碼DAS

;調(diào)整AL中的差為壓縮BCD碼AF=1或AL寄存器低4位是A~F,則AL寄存器內(nèi)容加/減06H;CF=1或AL寄存器高4位是A~F,則AL寄存器內(nèi)容加/減60H;5.1壓縮BCD碼調(diào)整指令第十二頁,共二十三頁,2022年,8月28日舉例:48+29=770100100000101001011100010000011001110111++AF=1加6調(diào)整MOV AL,48HMOV BL,29HADD AL,BLDAA (AL)=71H(AL)=77H第十三頁,共二十三頁,2022年,8月28日AAA

;調(diào)整AL中的和為非壓縮BCD碼AAS

;調(diào)整AL中的差為非壓縮BCD碼AAM

;AH=AXdiv10,AL=AXmod10

跟在MUL運算之后AAD

;AL=AH×10+AL,AH=0

跟在DIV運算之前5.2非壓縮BCD碼調(diào)整指令第十四頁,共二十三頁,2022年,8月28日三邏輯運算和移位指令邏輯運算移位操作與或非異或非循環(huán)移位循環(huán)移位邏輯移位算術移位不帶進位位的移位帶進位位的移位第十五頁,共二十三頁,2022年,8月28日一邏輯運算運算●運算規(guī)則:按位操作,無進/借位

●對標志位的影響(除NOT指令外):

CFOFSFZFPFAF00***無定義

根據(jù)運算結(jié)果設置第十六頁,共二十三頁,2022年,8月28日1邏輯”與”AND格式:ANDDST,SRC功能:DST∧SRCDST用途:保留操作數(shù)的某幾位,清零其他位。例1:保留AL中低4位,高4位清0。

ANDAL,0FH例2:測試AL的bit7,bit5,bit2是否都是1。

ANDAL,10100100B

CMPAL,10100100B

JZYES<notall1>……YES:第十七頁,共二十三頁,2022年,8月28日2邏輯”或”O(jiān)R格式:OR

DST,SRC功能:DST∨SRCDST用途:對操作數(shù)的某幾位置1; 對兩操作數(shù)進行組合。例:把AL的第5位置為1ORAL,00100000B第十八頁,共二十三頁,2022年,8月28日3邏輯”非”(取反)NOT格式:NOT

DST功能:對操作數(shù)進行按位邏輯”非”操作。例:NOTCX

NOTBYTEPTR[DI]第十九頁,共二十三頁,2022年,8月28日4邏輯”異或”XOR格式:ANDDST,SRC功能:DST⊕SRCDST用途:對操作數(shù)清零(自身異或);

把操作數(shù)的某幾位變反(與‘1’異或)例1:把AX寄存器清零。例2:把DH的bit4,3變反①MOVAX,0XORDH,18H②XORAX,AX③ANDAX,0④SUBAX,AX

第二十頁,共二十三頁,2022年,8月28日5測試指令TEST

操作與AND指令類似,但不將”與”的結(jié)果送回,只影響標志位。

TEST指令常用于位測試,與條件轉(zhuǎn)移指令一起用。例:測試AL的最高位是否為1,若為1則轉(zhuǎn)移到OTHER程序段。

TESTAL,80H

JNZOTHER … …OTHER: MOVCL,06H第二十一頁,共二十三頁,2022年,8月28日二移位指令1非循環(huán)移位指令算術左移指令

SAL(ShiftArithmeticLeft)

算術右移指令SAR

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論