freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[工學]第三章80x86的指令系統(tǒng)和尋址方式-資料下載頁

2025-01-19 12:10本頁面
  

【正文】 , 用于80286以上微機 。 指令功能:目的操作數(shù) ( reg) 乘源操作數(shù) ( reg/mem/data) , 結(jié)果送目的操作數(shù) 。 執(zhí)行的操作:字乘法: reg16 ← reg16 SRC 雙字乘法: reg32 ← reg32 SRC 對標志的影響:只對 CF和 OF有影響 (AF、 PF、 SF和ZF不定 ), 當 OF=1, CF=1時為溢出 。 匯編語言程序設(shè)計 有符號三操作數(shù)乘法指令 (IMUL) 指令格式: IMUL reg, SRC, data 其中:目的操作數(shù) reg 必須是 16位/ 32位通用寄存器 ,源操作數(shù) SRC可以是寄存器或存儲器 , data為立即數(shù) , 可以是 8位 /16位 /32位 , 該指令是三操作數(shù)指令 ,用于 80286以上微機 。 指令功能:源操作數(shù) reg/ mem乘立即數(shù) ( data) ,結(jié)果送目的操作數(shù) ( reg) 。 執(zhí)行的操作:字乘法: reg16 ← SRC data 雙字乘法: reg32 ← SRC data 對標志的影響:只對 CF和 OF有影響 (AF、 PF、 SF和ZF不定 ), 當 OF=1, CF=1時為溢出 。 匯編語言程序設(shè)計 無符號 /有符號除法指令( DIV/I DIV) 指令格式: DIV/IDIV SRC 其中:指令中的操作數(shù)為源操作數(shù) , 可以是寄存器或存儲器 , 目的操作數(shù)為隱含操作數(shù) , 該指令是單操作數(shù)指令 。 指令功能:目的操作數(shù) ( 為隱含操作數(shù) , 該操作數(shù)只能是 AL 或 AX或 EAX) 除源操作數(shù) SRC) , 結(jié)果送目的操作數(shù) AX 或 DX: AX或 EDX: EAX, 余數(shù)送AH或 DX或 EDX。 執(zhí)行的操作: (對標志的影響:無定義 。 ) 字節(jié)除法: AX247。 SRC→AL ( 商 ) , 余 → AH 字除法: DX: AX247。 SRC→AX ( 商 ) , 余 → DX 雙字除法: EDX: EAX247。 SRC→ EAX, 余 → EDX 匯編語言程序設(shè)計 除法指令總結(jié) 匯編語言程序設(shè)計 算術(shù)運算指令舉例 例 :計算 ( X+125X*Y)/Z, 設(shè) X、 Y、 Z為 16位帶符號的字變量 ,計算后將商存入 X, 余數(shù)存入 Y中 。 MOV AX, X 。乘數(shù) X →AX IMUL Y ; X*Y→DX :AX MOV CX, AX ; MOV BX, DX ;結(jié)果再存放到 BX:CX中暫存 MOV AX, X ; X→AX ADD AX,125 ; X+125→AX CWD ;將 AX轉(zhuǎn)換成雙字 → DX:AX SUB AX,CX 。低 16位減法 SBB DX,BX 。高 16位減法 , X+125X*Y →DX :AX IDIV Z 。(X+125X*Y)/Z, 商 → AX,余數(shù) → DX MOV X,AX 。商 → X MOV Y,DX 。余數(shù) → Y 匯編語言程序設(shè)計 邏輯運算指令 邏輯與( AND) 邏輯或( OR) 邏輯異或( XOR) 邏輯非( NOT) 測試( TEST) 匯編語言程序設(shè)計 邏輯與指令( AND) 指令格式為: AND DST, SRC 其中:指令中的目的操作數(shù)為寄存器 /存儲器操作數(shù),源操作數(shù)可以是寄存器 /存儲器 /立即數(shù)操作數(shù)。 指令功能:把源操作數(shù) SRC中的每個二進制位與目的操作數(shù) DST中的相應(yīng)二進制位進行邏輯與,結(jié)果送回到目的操作數(shù) DST中。 執(zhí)行的操作: DST ← DST ∧ SRC. 匯編語言程序設(shè)計 邏輯與指令( AND) AND 主要用于將二進制數(shù)的某些位清 0 AND BL, 0FH xxxxxxxx (BL) 00001111 0F 0000xxxx 結(jié)果 AND 匯編語言程序設(shè)計 邏輯或指令( OR) 指令格式為: OR DST, SRC 其中:指令中的目的操作數(shù)為寄存器 /存儲器操作數(shù),源操作數(shù)可以是寄存器 /存儲器 /立即數(shù)操作數(shù)。 指令功能:把源操作數(shù) SRC中的每個二進制位與目的操作數(shù) DST中的相應(yīng)二進制位進行邏輯或,結(jié)果送回到目的操作數(shù) DST中。 執(zhí)行的操作: DST ← DST ∨ SRC. 匯編語言程序設(shè)計 邏輯或指令( OR) OR 主要用于將二進制數(shù)的某些位置 1 OR BL, 0FH xxxxxxxx (BL) 00001111 0F xxxx1111 結(jié)果 OR 匯編語言程序設(shè)計 邏輯異或指令( XOR) 指令格式為: XOR DST, SRC 其中:指令中的目的操作數(shù)為寄存器 /存儲器操作數(shù),源操作數(shù)可以是寄存器 /存儲器 /立即數(shù)操作數(shù)。 指令功能:把源操作數(shù) SRC中的每個二進制位與目的操作數(shù) DST中的相應(yīng)二進制位進行邏輯異或,結(jié)果送回到目的操作數(shù) DST中。 執(zhí)行的操作: DST ← DST ∨ SRC. 匯編語言程序設(shè)計 邏輯異或指令( XOR) XOR 主要用于將二進制數(shù)的某些位求反 XOR BL, 0FH xxxxxxxx (BL) 00001111 0F xxxxxxxx 結(jié)果 XOR 匯編語言程序設(shè)計 邏輯非指令( NOT) 指令格式為: NOT OP 其中:指令中的操作數(shù) OP為寄存器 /存儲器操作數(shù)。 指令功能:把操作數(shù) OP中的每位變反。 執(zhí)行的操作: OP ← OP. 匯編語言程序設(shè)計 測試指令( TEST) 指令格式為: TEST DST, SRC 其中:指令中的目的操作數(shù)為寄存器 /存儲器操作數(shù),源操作數(shù)可以是寄存器 /存儲器 /立即數(shù)操作數(shù)。 指令功能:把源操作數(shù) SRC中的每個二進制位與目的操作數(shù) DST中的相應(yīng)二進制位進行邏輯與,結(jié)果 不送回到目的操作數(shù) DST中,只影響標志寄存器的 PF、SF和 ZF。 執(zhí)行的操作: DST ∧ SRC. 匯編語言程序設(shè)計 需要注意的問題 1) AND、 OR、 XOR、 TEST指令的源操作數(shù)可以是寄存器 /存儲器 /立即數(shù)操作數(shù),目的操作數(shù)只能是寄存器或內(nèi)存操作數(shù),不能是立即數(shù),源操作數(shù)和目的操作數(shù)不能同時為存儲器操作數(shù)。 2) NOT指令的操作數(shù)只能是通用寄存器或內(nèi)存操作數(shù)。 3) AND、 OR、 XOR、 TEST指令對 PF、 SF和 ZF按照規(guī)則設(shè)定其值,總是使 CF= 0、 OF= 0,對 AF無定義。 4) NOT指令不影響標志寄存器。 匯編語言程序設(shè)計 80386位測試指令 位測試指令 ( BT) 位測試并置 l( BTS) 位測試并置 0 ( BTR) 位測試并變反 ( BTC) 匯編語言程序設(shè)計 80386位測試指令 ( 1) 位測試指令 ( BT) 指令格式: BT DST, SRC 指令功能:把目的操作數(shù) DST中由源操作數(shù) SRC所指定位的值送標志寄存器 CF位 。 執(zhí)行的操作: CF ← DST的 SRC位 ( 2) 測試并置 l指令 ( BTS) 指令格式: BTS DST, SRC 指令功能:把目的操作數(shù) DST中由源操作數(shù) SRC所指定位的值送標志寄存器 CF位 , 并將目的操作數(shù) DST中的該位置 1。 執(zhí)行的操作: CF ← DST的 SRC位 DST的 SRC位 ← 1 匯編語言程序設(shè)計 80386位測試指令 ( 3) 位測試并置 0指令 ( BTR) 指令格式: BTR DST, SRC 指令功能:把目的操作數(shù) DST中由源操作數(shù) SRC所指定位的值送標志寄存器 CF位 , 并將目的操作數(shù)中的該位置 0。 執(zhí)行的操作: CF ← DST的 SRC位 DST的 SRC位 ← 0 ( 4) 位測試并變反指令 ( BTC) 指令格式: BTC DST, SRC 指令功能:把目的操作數(shù) DST中由源操作數(shù) SRC所指定位的值送標志寄存器 CF位 , 并將目的操作數(shù) DST中的該位取反 。 執(zhí)行的操作: CF ← DST的 SRC位 DST的 SRC位 ← 取反 匯編語言程序設(shè)計 需要注意的問題 1)指令中的目的操作數(shù) DST為 16位 /32位寄存器 /存儲器操作數(shù),源操作數(shù) SRC可以是 16位 /32位寄存器或立即數(shù)操作數(shù)( 0~ 31)。 2)指令中目的操作數(shù) DST和源操作數(shù) SRC類型相同。如不允許: BT AX, BL 或 BT EAX, BX 3)本組指令只影響標志寄存器的 CF位,其他標志位則無定義。 匯編語言程序設(shè)計 80386位測試指令舉例 例:測試 AX的最高位是否為 1。 MOV AX, 90H BT AX, 15 JC ISSET ; CF=1轉(zhuǎn)到 ISSET 標號上去 或: JNC ISNOTSET ; CF=0,轉(zhuǎn)到 ISNOTSET 標號上去 匯編語言程序設(shè)計 移位指令 邏輯移位( SHL/ SHR) 算術(shù)移位( SAL/ SAR) 循環(huán)移位( ROL/ ROR) 帶進位的循環(huán)移位( RCL/ RCR) 雙精度移位( SHLD/ SHRD) 匯編語言程序設(shè)計 邏輯移位指令( SHL/SHR) ( 1) 指令格式 : SHL/SHR DST, COUNT 移 1位時, COUNT可以為立即數(shù) 1 移多位時, COUNT的 值必須先存入 CL寄存器 指令功能: 邏輯左移 SHL是把目的操作數(shù) DST從低位依次向左移動 COUNT位 ,低位補 COUNT個 0; 邏輯右移 SHR把目的操作數(shù) DST從高位依次向右移動 COUNT位 , 低位補 COUNT個 0。 對標志寄存器的影響: CF、 OF、 PF、 SF和 ZF(AF無定義 ) 0 CF CF 0 邏輯左移 邏輯右移 匯編語言程序設(shè)計 邏輯移位指令舉例 分析下列程序段 ,說明其功能。 MOV AL, 05H MOV CL, 4 SHL AL, CL 分析下列程序段 ,說明其功能。 MOV AL, 05H MOV BL, AL MOV CL, 4 SHR BL, CL AND AL, 0FH 匯編語言程序設(shè)計 算術(shù)移位指令( SAL/ SAR) 指令格式 : SAL/SAR DST, COUNT 指令功能:算術(shù)左移 SAL是把目的操作數(shù) DST從低位依次向左移動 COUNT位 , 低位補 COUNT個 0; 算術(shù)右移 SAR把目的操作數(shù) DST從高位依次向右移動COUNT位 , 空出的高位用符號位的內(nèi)容填補 。 執(zhí)行的操作: CF CF 0 算術(shù)左移 算術(shù)右移 匯編語言程序設(shè)計 算術(shù)移位指令舉例 分析下列程序段 ,說明其功能。 MOV BL, 0DCH MOV CL, 2 SAR BL, CL 匯編語言程序設(shè)計 循環(huán)移位指令( ROL/ROR) 指令格式 : ROL/ ROR DST, COUNT 指令功能:循環(huán)左移 ROL 是把目的操作數(shù) DST從低位依次向左移動 COUNT位 , 移出的位不但送 CF中 , 同時將該位移到操作數(shù) DST的最低位 。 循環(huán)右移 ROR把目的操作數(shù) DST從高位依次向右移動 COUNT位 , 移出的位不但送 CF中 , 同時將該位移到操作數(shù) DST的最高位 。 對標志寄存器的影響:對 CF和 OF有影響 。 循環(huán)左移 循環(huán)右移 匯編語言程序設(shè)計 循環(huán)移位指令舉例 MOV BX, 9050H MOV CL, 8 ROL BX, CL 匯編語言程序設(shè)計 帶進位的循環(huán)移位指令( RCL/RCR) 指令格式 : RCL/RCR DST, COUNT 指令功能:帶進位的循環(huán)左移 RCL 是把目的操作數(shù) DST從低位依次向左移動 COUNT位 , 移出的位先送 CF中 , 將 CF位移到操作數(shù) DST的最低位 。 帶進位的循環(huán)
點擊復制文檔內(nèi)容
教學課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1