《計算機接口技術及應用》課件-5.21邏輯運算指令之或、非和異或指令_第1頁
《計算機接口技術及應用》課件-5.21邏輯運算指令之或、非和異或指令_第2頁
《計算機接口技術及應用》課件-5.21邏輯運算指令之或、非和異或指令_第3頁
《計算機接口技術及應用》課件-5.21邏輯運算指令之或、非和異或指令_第4頁
《計算機接口技術及應用》課件-5.21邏輯運算指令之或、非和異或指令_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

微機原理及應用第五章8086指令系統(tǒng)第二十一講邏輯運算指令之或、非和異或指令下面我們來學習邏輯或指令,邏輯或指令的操作碼是OR它的功能是計算兩個操作數(shù)按位或的結果邏輯或指令計算兩個操作數(shù)按位或的結果ORdest,srcz邏輯運算指令之或、非和異或指令它可以實現(xiàn)兩個八位操作數(shù)之間的相或運算或是兩個16位操作數(shù)之間的相或運算,結果沒有進位或借位但是兩個操作數(shù)的字長必須要相等邏輯或指令兩個八位操作數(shù)的相或運算兩個十六位操作數(shù)的相或運算無進位無借位字長相等它也有三種應用場景,場景一是直接計算兩個操作數(shù)相或的結果,比如ORax,[DI]這條指令的功能就是計算AX與DI指示的兩個連續(xù)內存單元構成的16位數(shù)據(jù)按位或的結果場景一實現(xiàn)兩個操作數(shù)相“或”的運算ORAX,[DI]計算十六位數(shù)據(jù)按位或的結果場景二是使某些位不變,其他位置一。這種場景下,重點依然是如何設計一個立即數(shù),這個立即數(shù)在想要置1的那些位上為1,在其他的位上都為0比如ORCL,0FH,這條指令的功能是將CL的低四位置一,高四位保持不變場景二某些位不變,某些位置1置1的位為1立即數(shù)其他位為0ORCL,0FH低四位置1,高四位保持不變場景三自己跟自己相或的結果場景三是在不改變操作數(shù)的情況下,使OF和CF都等于零比如ORax,ax,是求AX自己跟自己相或的結果。這就相當于是零和零相或,1和1相或,結果是保持不變的,但是OF和cf都會被清零在不改變操作數(shù)的情況下使OF=CF=0ORAX,AX0和0相或1和1相或結果不變OF和CF清零下面我們來看一個具體的例子,題目要求將一個二進制數(shù)的9變成字符9,二進制數(shù)的九,我們可以直接用逗號九表示,雖然這個9是十進制數(shù),但是在AL中,它是二進制的形式而且只占據(jù)了AL的低4位。對于字符九,同學們可以去查一下他的ASCII碼是39h,我們想把09h變成39h,只需要將09h與30h相與即可。所以第二條指令,就是求Al與30h相與的結果將一個二進制數(shù)9變?yōu)樽址?’MOVAL,9字符‘9’ASCII碼是39h09h變成39h09h與30h相與ORAL,30H占據(jù)AL的低4位二進制形式下面來看一下非邏輯運算,非邏輯運算的操作碼是NOT。它的功能是對它的操作數(shù)按位取反后再送回這個操作數(shù)對應地址里去,所以它是單操作數(shù)的指令。由于它的操作數(shù)既是源操作數(shù),又是目的操作數(shù),所以它的操作數(shù)不能是立即數(shù),NOT指令比較特殊,它對標志位是沒有影響的,非邏輯運算操作數(shù)按位取反再送回原地址NOT

OPRD

單操作數(shù)指令源操作數(shù)目的操作數(shù)不能是立即數(shù)下面來看一下非邏輯運算,非邏輯運算的操作碼是NOT。它的功能是對它的操作數(shù)按位取反后再送回這個操作數(shù)對應地址里去,所以它是單操作數(shù)的指令。由于它的操作數(shù)既是源操作數(shù),又是目的操作數(shù),所以它的操作數(shù)不能是立即數(shù),NOT指令比較特殊,它對標志位是沒有影響的,非邏輯運算NOT

OPRD

對標志位無影響下面來看一個例子,比如NOTbyteptr[bx]。這里bx是放在方括號里邊的,所以它指向的是內存單元,既然是內存單元的話就要說明他的字長,這條指令中用byteptr說明了只有一個字節(jié)的長度,所以,這條指令的含義是將bx指向的一個內存單元的內容按位取反后再存回這個單元例子NOTBYTEPTR[BX]內存單元一個字節(jié)長度將bx指向的內存單元內容按位取反后再存回該單元最后一個邏輯指令是異或指令,他的操作碼是XOR它的功能是求兩個操作數(shù)按位相異或的結果兩操作數(shù)相“異或”XOROPRD1,OPRD2異或指令異或大家還記得嗎?就是兩個值相同為零,不同為一,它也是雙操作數(shù)的指令,計算結果被保存在目的操作數(shù)中異或指令異或?兩個值相同為0,不同為1結果送目標地址異或有兩個應用,第一種應用就是求兩個操作數(shù)之間按位相異或的結果比如,XORBL,80H,這條指令是求BL和80H相異或的結果,你也可以把它看成是保持BL的低4位不變,高4位按位取反。應用一求兩個操作數(shù)之間按位相異或的結果XORBL,80H保持BL的低4位不變,高4位按位取反第二個常用的應用就是將寄存器清零因為寄存器自己跟自己相異或就相等于是1和1異或,0和0異或,那么結果一定是全0的,所以這個應用就是為了將寄存器清0應用二寄存器清零XORAX,AX1和

溫馨提示

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

評論

0/150

提交評論